Car-tech

Google Executive frustrat de Java, complexitatea C ++

Stanford Seminar - Oracle v. Google: Are Java APIs Copyrightable?

Stanford Seminar - Oracle v. Google: Are Java APIs Copyrightable?
Anonim

- C ++ și Java, în special - sunt prea complexe și nu sunt adecvate pentru mediile de calcul de astăzi, a declarat Rob Pike, inginerul specializat Google, într-o discuție joi la Conferința Open Source O'Reilly. "limbi de programare industrială" în timpul conferinței sale de la Portland, Oregon. "Cred că aceste limbi sunt prea greu de folosit, prea subtile, prea complicate, sunt mult prea verbose și subtilitatea, complexitatea și verbosele lor par să crească în timp ", a spus Pike. "Pike a detaliat neajunsurile unor astfel de limbi, ca o modalitate de a descrie obiectivele pe care el și alți ingineri Google le au pentru un nou limbaj de programare pe care l-au dezvoltat, numit Go.

Ca o ilustrare a complexității unor astfel de limbi, Pike a arătat câteva exemple de cod C ++. Un exemplu a fost o declaratie variabila care se intindea aproape pe intreaga linie a ecranului.

"Cum avem chestii ca aceasta [sa fim] modul standard de calcul care este predat in scoli si este folosit in industrie? " întrebă el retoric. Acest tip de programare "este foarte birocratic, fiecare pas trebuie sa fie justificat compilatorului", a spus el.

In timp ce Pike a recunoscut ca este oarecum deranjant, el a afirmat ca asemenea intrebari ar trebui sa fie intrebate. C ++ a apărut din cauza frustrării oamenilor de a lucra cu limbajul C de nivel scăzut, iar Java a apărut ca o modalitate de a simplifica C ++. Cu timpul, cu toate acestea, au fost adăugate noi caracteristici în ambele limbi, făcându-le din ce în ce mai complexe.

"Zgomotul vine cu sofisticare", a afirmat el.

Pike a adăugat că astfel de limbi au fost dezvoltate înainte de apariția procesării multicore și pe scară largă în rețea, astfel încât să nu poată acomoda cu ușurință aceste noi medii

La conferința anuală USENIX, luna trecută, inginerul Gmail, Adam de Boor, nu este singurul angajat al Google care exprimă nemulțumirea față de limbile comerciale tradiționale. a surprins publicul observând că serviciul Gmail al companiei a fost scris în întregime în JavaScript și că tot codul său, în jurul valorii de 443.000 de linii în valoare, a fost scris manual.

El a menționat că, în timp ce Java este mai expresivă,. "În acest moment pentru mine este o chestiune de alegere în ce limbă folosiți", a spus de Boor.

JavaScript este unul dintr-un întreg lot de limbi - altele includ Ruby și Python - care au fost dezvoltate în ultimele 10 ani ca răspuns la complexitatea în creștere a C ++ și Java. Însă în timp ce au o sintaxă mai simplă, astfel de limbi au și dezavantajele lor, susține el.

Aceste limbi noi tind să fie mai lente, nu se scal, de asemenea, și pot conține mai multe erori, elaborate de Pike. tind să fie interpretate mai degrabă decât compilate, ceea ce înseamnă că programele scrise în astfel de limbi nu sunt compilate înainte de a fi difuzate, deci au tendința de a rula mai lent ca rezultat. De asemenea, au tendința de a fi tastate dinamic, adică programatorii nu trebuie să precizeze ce tip de date vor avea variabilele lor.

"Tastarea dinamică nu este neapărat bună, veți obține erori statice la timpul de execuție pe care într-adevăr ar trebui să puteți "

" Go este o încercare de combinare a siguranței și a performanței ", a spus el.

Cu toate acestea în minte, Pike a descris apoi Go ca o încercare de a fuziona cele mai bune atribute ale ambelor seturi de limbi. de limbi statice tipărite, cu comoditatea și distracția limbilor interpretative dinamice de tipar ", a spus el, înainte de a adăuga," în măsura în care reușește el va trebui să judeci singur. "

Un membru al audienței, Larry Augustin CEO-ul furnizorului de software pentru managementul relatiilor cu clientii SugarCRM a fost de acord cu evaluarea lui Pike ca C ++ si Java au devenit prea complexe, desi a remarcat ca acest lucru se intampla in mod obisnuit cu toate limbile in timp ce cresc pentru a satisface o gama mai larga de cazuri de utilizare

"Motivul pentru care aceste limbi s-au dezvoltat în complexitate se datorează faptului că cu cât sunt folosite, cu atât mai multe erori și ambiguități pe care le-am găsit și încercările de a elimina aceste ambiguități și erori au creat ceva mai complex", a spus Augustin, care are fundal în ingineria software-ului și proiectarea limbajului de programare. "" Apreciez scopul său ", a spus el despre eforturile lui Pike. "Întrebarea este că el va reuși să obțină rezultatul țintă sau că va deveni mai complex, pe măsură ce mai mulți oameni îl folosesc", a spus Augustin.

Joab Jackson acoperă știrile despre întreprinderi și tehnologia generală pentru

Serviciul de știri IDG

. Urmăriți-l pe Joab pe Twitter la @ Joab_Jackson. Adresa de e-mail a lui Joab este [email protected]