/ / Popularita Javy v internetovej algoritmike (vyhľadávanie, veľké dáta atď.) [Uzavreté] - Java, C ++, výkon, algoritmus, programovacie jazyky

Java popularita v oblasti internetovej algoritmy (vyhľadávanie, veľké dáta atď.) [Zatvorené] - java, c ++, výkon, algoritmus, programovacie jazyky

Kód C / C ++ píšem už roky. Nedávno som začal robiť tiež veľa Java, pretože niektoré z veľmi dobrých produktov, ktoré používam na riešenie svojich problémov s počítačom, sú napísané v jazyku Java (príklad: Lucene / Solr, Hadoop, Neo4j, OpenNLP atď.).

Vidím túto závislosť od posledných 3-4 rokovJava je skutočne veľmi populárna minimálne v oblasti internetových algoritmov (klastrovanie, vyhľadávanie, veľké dáta atď.). Aj keď sú to náprotivky produktov, ktoré som spomenul vyššie v C ++ (podobne ako napríklad Search Sphinx napísaný v C ++ je skvelá voľba, Google má svoju Map Reduce napísanú v C ++ atď.)

Len by ma zaujímalo, aké sú faktory a sily, vďaka ktorým je Java v dnešnej dobe veľmi populárna špeciálne v doméne Získavanie informácií a Veľké dáta.

Chcel som len spoznať silné stránky Java, vďaka ktorým je veľmi obľúbený v priestore internetových algoritmov? Je to len kvôli veci nezávislosti na platforme?

odpovede:

3 pre odpoveď č. 1

Tvrdil by som, že Java a C ++ fungujú na podobnej úrovni aj mimo svojvoľných vykonštruovaných situácií, ktoré sa tak často používajú na preukázanie toho, že X je rýchlejší ako Y.

Akonáhle zohľadníte časy obojsmerných pripojení k sieti ainé, oneskorenia v reálnom svete, nevidím aplikáciu C ++, ktorá ponúka merateľnú výhodu oproti aplikácii Java jednoducho kvôli tomu, že je C ++ oproti Jave. Uvidíte však merateľný rozdiel medzi dobre napísanou aplikáciou a slabo napísanou aplikáciou. - písomná žiadosť.


1 pre odpoveď č. 2

nezávislosť od plattform je pekná vlastnosť, ale v Jave nefunguje vždy. podľa toho, čo robíte

java získava svoju popularitu tým, že je bezpečnejšia ako c ++

nemôžete použiť aritmetiku ukazovateľa a nemôžete zvládnuť alokáciu pamäte sami

ak sa niečo strašne pokazí, dostanete výnimku alebo chybu, alebo program jednoducho zlyhá, ale v Jave ste si relatívne istí, že nebudete pokračovať v tom, čo určite nechcete robiť

áno, to všetko môžete robiť v c ++, ale to nie je otázka, nie?