![]() |
| ||||||||
| Notices |
| View Poll Results: care credeti ca este viitorul in programare ? | |||
| Java (si tehnologiile aferente) | | 118 | 38.82% |
| .NET | | 125 | 41.12% |
| altceva (exemplificati) | | 61 | 20.07% |
| Voters: 304. You may not vote on this poll | |||
![]() |
| | LinkBack | Thread Tools |
| | #301 (permalink) | |||||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent | Quote:
Quote:
Nu stiu la ce te referi prin "RBS" ... dar depinzand de ce inseamna FOARTE mare si de nivelul de securitate urmarit, se pot aplica diferite strategii. Dar, ce pot sa-ti spun este ca daca astepti milioane de useri ori esti foarte optimist, ori esti Microsoft .Quote:
Quote:
Quote:
![]() Hai bafta | |||||
|
| | #302 (permalink) | |||||||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent | Quote:
Quote:
Quote:
).Quote:
Quote:
In rest nu ma pot pronunta...Quote:
]Quote:
In ceea ce priveste viitorul COM, ca ACUM poti inca folosi COM din .Net stiu. Intrebarea e ce surprize ne rezerva nenea Wronghorn, daca tot vorbeam de viitor ...
| |||||||
|
| | #303 (permalink) | ||||||||||
| Quote:
E ca si cum nu s-ar ocupa.Quote:
2. Close il pui in finally, deci trebuie sa ai niste instructiuni in plus pe acolo, nu-i asa? Si close, si try/finally... Quote:
void method(){ fstream o("out.txt"); o<<"bla"; } Sau vrei asa: void method(){ SmartPtr<fstream> s(new fstream("out.txt")); *s << "bla"; } Sau poate preferi ceva la nivel mai coborat: void method() { shared_ptr<FILE> p(fopen("out.txt","a+"),fclose); //and so on } Quote:
![]() Quote:
![]() Quote:
Quote:
Ai dreptate in acest caz ![]() Quote:
![]() Quote:
![]() Quote:
![]() Prea multe nivele intermediare. Prea multe schimbari intr-un interval foarte mic de timp. Portabilitate 0. Overhead 1000% Standarde nestandard Timp de viata mult prea redus pentru aplicatii cat de cat serioase. Mai vrei?
| |||||||||||
|
| | #304 (permalink) | ||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent |
haha ! "* The magnitude of this hack compares favorably with that of the national debt." citat din private\ntos\w32\ntuser\client\nt6\user.h, programator Microsoft anonim Ref http://www.kuro5hin.org/story/2004/2/15/71552/7795 | ||
|
| | #307 (permalink) | ||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent |
Totusi nu sunt numai tampiti la msft... Cunosc personal 3 angajati acolo cu care am fost coleg pe la various gigs. Culmea e ca omul care in '94 mi-a explicat cum se instaleaza Linux si cum se configureaza si compileaza un kernel (eu fiind la vremea respectiva un electronist "sapator de santuri" cf. Aaroman) e acum angajat la msft ![]() Ca sa rezum, nu ma mira ca se produce la ei si destul cod de calitate. Problema mare a msft e strategia de produse & marketing (worse is better, extend&embrace, vendor lock, standarde inchise & co). Ca sa nu mai vorbim ca o firma care are 80% profit operational pe 2 divizii (os & office) pute a overpriced de la mare distanta. Iar cand miliardele cu pricina sunt folosite ca sa strangi concurenta de bile, sa cumperi startup-uri promitatoare pe care sa le bagi in frigider si sa investesti in dezvoltarea unor standarde cu specificatii inchise ... | ||
|
| | #308 (permalink) | ||
| Quote:
Insa sincer sa fiu, am vazut si cod Microsoft scris ca porcu', de obicei in sample-uri. Probabil acolo pun programatori mai putin talentati, ca au fost cazuri in care a trebuit sa modific codul numai ca sa poata fi compilat Ce sa mai vorbim de erori care nu sunt prinse la compilare | |||
|
| | #310 (permalink) | ||
|
"Nu ajuta, pentru ca in timp ce exemplul meu este un caz particular desigur limitat si "pervers" (daca vrei) de SOA, DCOM nu numai ca nu este SOA dar va fi kiluit de MSFT in viitorul apropiat. Sigur, ca prezinta un interes istoric, arheologic poate." Mdea...dupa cum am spus deja poti sa folosesti ES din .NET. Deci poti migra DCOM in .NET. Si apoi, fara modificari, in Indigo. Deci nu e chiar interes arheologic. "Este vorba de context _la nivel de aplicatie_." I give up. Chiar nu-mi dau seama la ce te referi. Ai pomenit de treaba cu orchestrarea. Asta e specifica fiecarui proiect..Stii ca virgula ca sa obtii treaba X folosesti metoda Z a clasei Y . Rezultatul il pasezi metodei N al clasei C. Apoi mai departe metoda G a clasei E. Getting dizzy..ha ? ![]() Dar aici era vorba de conceptele SOA. Iar orchestrarea NU e un concept SOA. Orchestrarea o poate face orcine care e familiarizat cu proiectul respectiv. " Cu riscul de a ma repeta, web services nu inseamna doar o metoda speriata care asteapta infrigurata s-o apeleze utilizatorul X." Din pct de vedere al celui care consuma serviciul (sau care il expune) TOCMAI asta inseamna. Vezi tu dude...e doar RPC over HTTP. Nu e EJB, RMI, .NET Remoting , [insert distibuted obj arhitecture here]. E doar o metoda pe care tu O APELEZI. ATIT !! " Web services poate sa insemne o mare haita de astfel de metode PESTE o aplicatie legacy stateful pana in maduva oaselor, metode care trebuie apelate intr-o anume ordine si cu o anume logica in spate daca vrei sa obtii ceva coerent. Sunt multe cazuri in care visul cu serviciul monolitic, marea metoda stateless care face tot este - da - doar un vis" Da...si ? La fel de bine poate sa fie un select in db care returneaza direct rezultatul. Daca ai tu o tona de legacy crap peste care infigi wsul....DE CE M-AR interesa asta ? In marea majoritate a cazurilor e doar unul/mai multe calluri in BL. Vezi servicul X ? Apelezi metoda X. Vrei serviciul Y ? Apelezi metoda Y. Toate metodele fiind grupate sub denumirea Z. " Nu stiu la ce te referi prin "RBS" " Scuze pt acronim. RBS = Role Based Security. "... dar depinzand de ce inseamna FOARTE mare si de nivelul de securitate urmarit, se pot aplica diferite strategii. " Such as... "Dar, ce pot sa-ti spun este ca daca astepti milioane de useri ori esti foarte optimist, ori esti Microsoft ." Sa nu spunem milioane...in jur de 10000, de ex. "Acu' pe bune nu stiu cum sa-ti explic eu mai bine : eu nu dansez, imi castig painea. Iar "viitorul" Indigo vs Indigo mi se pare nu foarte apropiat, poate ca nu am fost foarte clar. In rest sigur ca J2EE fiind conceput la o data anterioara (cum zic fetele de la administrativ) nu beneficiaza de o viziune unitara si o implementare nativa SOA. Dar exista implementari Java proprietar SOA-compliant (cele mai notabile BEA si IBM) bazate pe web services (SOAP si dynamic discovery cu WSDL), intarite cu MQM-ul de rigoare pentru aplicatiile complexe cu volumetrie mare de mesaje. In J2EE 1.4 implementarea de referinta de la Sun contine JAX-RPC 1.1 pentru creare si consum de web services si suport pentru WS-I Basic Profile 1.0." Nu e de ajuns. Ca sa nu mai vorbim ca ACUM NU exista 100% interop intre wsurile create cu diferitele implementari J2EE. Yeah....IBM ownz them all...dar ce te faci cu restul ? Doar WS-I Basic Profile ? Microsoft si IBM implementeaza TOATE standardele WS. Deci 100 interop poate fi obtinuta DOAR intre .NET si WebSphere. MS publica APIul care va face SOA o realitate in .NET si cu vii cu...MQM si JAX-RPC 1.1. Muhahhahahhah... "Argumentatia ta e recursiva. Raspunsul la punctul 3 se incaleca la punctul 1. So ?" No. Gasesti addinuri VS.NET pentru refractoring gratuite. "You are bullshitting me, right ? Sunt totusi doua chestii diferite..." Dar totusi nici una nu are legatura cu IDEul.Intr-o discutie despre IDEuri tu aduci ca argument chestia cu "Rich Client Platform". So.... "Eu personal nu dar un baiat (mai destept) cu care lucrez acu in echipa foloseste AOP pentru a crea dinamic tranzactii pe niste apeluri de servicii. Adica, unele servicii doar citesc datele si-atunci nu merita sa te pozitionezi intr-o tranzactie (tranzactie Hibernate), altele le mai si modifica si-atunci e frumos sa faci un "begin" la inceput si un "commit" sau "rollback" la sfarsit. Pentru a declansa tranzactia se foloseste un tag xdoclet in documentatia clasei care se scrie undeva intr-o lista de atribute citita la runtime. Deci, da, se poate spune ca am folosit (via proxy )." Asta suna mai mult a interception. Anyway...ideea e...cum te ajuta IDEul cu asta ca sa poata fi considerata un + ? "Compara USER Eclipse <-> CLIENT Microsoft. Compara FREE <-> MSDN $$$. Sesizezi vreo diferenta ?" Comparam IDEurile pe merite tehnice sau Eclipse e mai bun doar pt ca e free ? "Perl si Python 1 : eu si sunt foarte multumit In rest nu ma pot pronunta..." Genial argument. Me myself and I... "Ce sa spun, ma uimesti ca vs net ofera suport pentru cod nativ, tsql, managed code si windows gui builder ? Wheew... dar ia stai, nu e oarecum firesc ? In afara de managed code, nu cumva am mai vazut asta si acum un numar de anisori ? Inovatie, cineva ? Alo, Redmond, se aude acolo jos ? [Desigur o sa fiu pleznit nemilos cu Whidbey, Whitehorse & co ]" Evident ca e firesc. E nefirec ca Eclipse sa aiba un amarit de syntax highlight pt limbajul X si sa spuna..."suportam limbajul X". De fapt...scuze...asta nu e nefiresc. E penibil.. In plus...lol...inovatia. (cuvintul magic regurgitat de orcine care discuta despre un produs MS). Ce INOVATII aduce Eclipse !!!! VS.NETul macar are chestiile enumerate mai sus out of the box. Si, folosind .NET framework, poti sa develop un proiect in mai multe limbaje . In Java....te apuci sa bagi value types in arrays ca sa le poti pasa by reference. Apoi viteza...muhaha...VS.NET 2K# (VC++,C#,VB.NET, Crystal Reports, Active Reports + o droaie de addinuri) e mult mai rapid decit Eclipse "highlight java code syntax" IDE. In plus debuggerul.....compara debuggerul VS.NEtului cu ala din Eclipse !!!! Sau code editorul din VS.NET.... "Fake. Te asigur ca portarea din VB in VB.net e un ordin de magnitudine mai complicata decat din 1.1 in 1.4. Dar stiai asta, ma asteptam la un argument mai suculent In ceea ce priveste viitorul COM. COM, ca ACUM poti inca folosi COM din .Net stiu" Life sucks and then you die. Cam asa e si cu VB6.... Despre COM....orice devine deprecated dupa un anumit timp*. (*cough* AWT *cough*) Deh..nothing lasts forever. Folosesti COM cit ai nevoie si.....move on. *singura exceptie e COBOL.
__________________ put a stake thru my heart and drag me into sunlight | |||
|
| | #311 (permalink) | ||
|
"In unele cazuri se ocupa prea tarziu E ca si cum nu s-ar ocupa." Live and learn. in .NET poti sa invoci GCul. Daca creezi multe obiecte si vezi sa le "distrugi" imediat nu ai decit sa GC.Collect(); Diferenta e ca NU stai sa delete dupa fiecare individual. In Java n-am idee daca se poate... 1. Evident ca le face, dar prea tarziu, in multe cazuri. Daca trebuie s-o faci tu explicit, degeaba o face. LOL...pai daca o faci tu explicit nu o mai face el. 2. Close il pui in finally, deci trebuie sa ai niste instructiuni in plus pe acolo, nu-i asa? Si close, si try/finally... Try si finally oricum le pui.Nu-mi spune...tu esti atit de meserias incit nici nu mai folosesti exception handling... "Nu! void method(){ fstream o("out.txt"); o<<"bla"; }" Si se inchide singur ? Nice.. "Intrebarea asta s-o pui alora care au dezvoltat Java" Da un motiv pentru care ar trebui sa faca asta... "E vorba de 2 chestii distincte cu mari diferente intre ele care au acelasi scop." "Citeste cu atentie ce-ai scris". LOOL. Quote: DE CE ai vrea ca al 2 sa fie on top la primul ? "De ce nu?" Asta e argument de genul aluia cu Batman si Superman.... Quote: Ai nevoie de WinForms...folosesti win forms. Ai nevoie de Longhorn only UI folosesti Avalon. "It's that simple." "Si daca n-ai nevoie de nici una?" Recunoaste.....n-ai avut nimic de spus.Dar ai simtit nevoia sa scrii ceva... ![]() "Apelul la autoritate?" Bull....DA UN ARGUMENT !! Spune-mi DE CE ar fi mai bine ca sa fie unul peste altul ? Quote: OK...atunci....ce nu iti place la modul in care au evoluat ADO/ADO.NET din RDO/DAO? "Ai uitat oledb". Majoritatea nu se incurcau cu interfetele OLDB (de fapt doar din VC++ puteai sa le folosesti). Asa ca am pus direct ADO. "Prea multe schimbari intr-un interval foarte mic de timp." Nu te obliga nimeni sa codezi pt "the latest and greatest". NU te forteaza MS sa nu mai folosesti DAO. "Portabilitate 0." ADO - ADO.NET. APIul seamana (ai conection , command ). Poti trece destul de usor de la unul la altul. " Overhead 1000% " BULLLLLLLLLLLLLLLSHIT !!!!! Hai sa-l luam pe ultimul...ADO.NET. De ex, in cazul Sql Server, Oracle, DB2 (sau orice prov nativ). Providerul comunica DIRECT cu serverul. Overheadul e FIX 0. "Timp de viata mult prea redus pentru aplicatii cat de cat serioase." Huh...daca tu incepi un proiect MARE in DAO....si MS face public ADO. Tu ce faci ? Lasi totul balta si o iei de la 0 cu ADO ? "Mai vrei?" N-ai dat nici un argument convingator. Deci.....baga tare.
__________________ put a stake thru my heart and drag me into sunlight Last edited by KLAMATH; 18-02-2004 at 11:35.. | |||
|
| | #312 (permalink) | ||||||||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent | Quote:
Quote:
Quote:
Quote:
vezi pe eclipse.orgQuote:
Quote:
raport calitate/pret Sigur ca pretul conteaza. Pe de alta parte, daca e un jeg pot sa primesc si bani ca tot nu o sa folosesc.Quote:
Quote:
* C/C++ Editor (basic functionality, syntax highlighting, code completion etc.) * C/C++ Debugger (APIs & Default implementation, using GDB) * C/C++ Launcher (APIs & Default implementation, launches and external application) * Parser * Search Engine * Content Assist Provider * Makefile generator Suportul de Python are highliting si content assist inca rudimentar, iar debugging-ul e tristut, via jython. Sa vedem urmatorul release. Suportul de groovy e in lucru (ca si groovy dealtfel) dar va fi mapat pe Java adica fabulos. SQL are highlighting, autocompletion ANSI deocamdata si content assist cu nume de tabele (in jfacedbc). Altele nu ma pasioneaza ![]() Cu viteza, am spus deja ca Eclipse e mai lent si gasesc absolut firesc. Vad ca insisti sa ma convingi. Repet : da, Eclipse e mai lent... | ||||||||
|
| | #313 (permalink) | ||||||||||||
| Quote:
![]() Quote:
Quote:
![]() Quote:
![]() Quote:
Quote:
Mi se pare stupid ca pentru a afisa o forma cu un text pe ea, doua butoane si un edit box, sa trebuiasca sa schimbi implementarea programului de cate ori ii creste cornu' (longhornu') lui Microsoft. Daca ar fi definit niste interfete clare de la inceput, si eventual pentru a oferi facilitati suplimentare le extindeau, era ok. Porcaria e ca Microsoftu' nu schimba nucleul, implementarea, atat de mult precum schimba interfetele. Tehnologiile lor de baze de date nu s-au schimbat chiar asa de mult de-a lungul timpului, cat s-au schimbat modalitatile de acces la date (si Jet, si SqlServer/MSDAC sunt cam tot alea, cu bug fixes si extensii). Nucleul Windows NT-ului nu s-a schimbat in mod atat de radical, cat s-au schimbat interfetele pentru a avea acces la serviciile oferite de OS. Tehnologii vechi in haine noi? Quote:
Quote:
Eu m-am incurcat cu interfetele oledb. Am scris si provider oledb, si de cate ori am de-a face cu "standardul" ms, intre ado si oledb pentru a accesa datele, aleg aproape intotdeauna oledb. Exceptia e la programele extrem de simple, sau atunci cand trebuie sa fac teste...Quote:
Quote:
Da, un programator poate trece usor de la unul la altul, nu asta era problema. Problema apare la codul deja existent, care trebuie rescris, daca vrei sa-ti mai mearga si in viitor ![]() Quote:
Quote:
| |||||||||||||
|
| | #315 (permalink) | ||
|
Ce simpatic esti tu Si oledb, ado & ado.net nu sufera de asemenea probleme? Te anunt ca nu toate interfetele sunt "mandatory", asa incat o sa te trezesti cu provideri care fac asa:return DB_E_NOTSUPPORTED; sau: return E_NOTIMPL; sau (o portiune dintr-un provider oledb pentru interbase/firebird): HRESULT STDMETHODCALLTYPE CInterBaseSession::Abort( /* [in] */ BOID * pboidReason, /* [in] */ BOOL fRetaining, /* [in] */ BOOL fAsync) { CSmartLock sm(&m_cs); DbgFnTrace("CInterBaseSession::Abort()"); BeginMethod(IID_ITransaction); if( m_iscTransHandle == NULL || m_fAutoCommit == true ) { return XACT_E_NOTRANSACTION; } if( fAsync == TRUE ) { return XACT_E_NOTSUPPORTED; } return InternalAbort( ( fRetaining == TRUE ) ); } | |||
|
| | #317 (permalink) | ||
| Pinguis quod tumidus Join Date: Feb 1999 Location: this space for rent |
Aspectj are o foarte buna integrare cu eclipse dar n-as garanta ca e cea mai buna implementare de aop la ora actuala In locul tau m-as uita si pe dynaop-ul asta nou http://weblogs.java.net/pub/wlg/1001 al lui Bob Lee (care a contribuit cu ceva cod si la implementarea celor de la jboss).DAR : daca e vorba doar de un site si vrei sa-ti simplifici transaction in session, am o solutie mai simpla non-AOP insa Tapestry-specific. Continuam pe PM daca esti interesat... | ||
|
| | #318 (permalink) | ||
|
Thx. Deocamdata e o webapp dar soon o sa aiba si rich client stuff Tranzactiile sunt doar prima chestie, am ochit mai multe zone unde ar merge AOP. Oricum, n-am nici un chef sa trec pe tapestry, am facut atatea schimbari in ultima vreme ca am ametit de tot
__________________ | |||
|