Wir können leicht den Wert von Technologien vergessen, die einst bei den Affen beliebt waren, aber von verschiedenen neuen Technologien vertuscht wurden, bis sie zerstört wurden. Nehmen Sie Cobol, die magische Waffe, die die alten Affen damals benutzt haben, als wäre es ein toter Fisch, und sie wurde im Grunde genommen von modernen Affen als solches beschrieben: Es ist wertlos, fischig, veraltet und wird Ihnen nicht zugute kommen. Java als Rückgrat moderner Affen kann zu diesem Zeitpunkt der nächste Cobol werden.
Es ist lange her, wie viele Bücher von Java Technology verkauft werden. Der Zweck der Java -Sprache, die jetzt im mittleren Alter ist, erscheint nicht mehr auf den Deckungen verschiedener Magazine. Es ist 19 Jahre her, seit Java geboren wurde, und der Anwendungsentwicklungskreis hat begonnen, neue Technologien wie "Node.js", "Objective-C", "Dart", "Go" usw. zu kreisen. Java? Das ist eine Legende im Web 1.0 -Ära, oder?
Bevor wir die Rolle, die Java spielt, und ihre herausragenden Beiträge in der Computerindustrie vergessen, sind hier 12 absolute Gründe, Ihnen zu sagen, dass Java nicht nur nicht wie COBOL zerstört wird, sondern auch in den nachfolgenden Epochen stärker wird.
Mit anderen Worten: Sagen Sie nicht, dass dies ein Gegenangriff von Java ist, Java war immer da und sein Status kann nicht erschüttert werden.
Der Hauptgrund, warum Java weiterhin dominiert, Nr. 1: Un unbezwingbar im politischen (normalerweise minderwertigen) Kampf
Zu Beginn hätte die Technologiegemeinschaft nie gedacht, dass Java erfolgreich sein würde, weil sie zu viele Gegner hatte und alle "reich" war. Trotzdem hat Java floriert. Diejenigen, die überrascht sind, dass Java immer noch existiert, müssen zu viel Zeit damit verbracht haben, denjenigen zuzuhören, die einen Groll gegen Java haben, und nicht Zeit damit zu verstehen, warum Java erfolgreich ist.
Microsoft war der erste mächtige Gegner, mit dem Java ausgesetzt war, da MS-DOS zu dieser Zeit Universalität bereitstellte, und Microsoft sah, dass Java der wahrscheinlichste Ersatz für diese Universalität war. Redmond kritisiert Java von Anfang an und kämpft auf jede mögliche Weise dagegen. In der Desktop -Anwendungsrichtung hat Java noch nie nach der Entwicklung der Entwicklung gesucht, die sie benötigt, teilweise, weil es zu lange dauert, um eine leistungsstarke Java -virtuelle Java -Maschine zu starten. Trotz einiger Startverzögerungen sind Java -Anwendungen auf der Fensterplattform weiterhin verfügbar.
Steve Jobs hat Java aus irgendeinem unbekannten Grund nie akzeptiert, selbst in einer Zeit, als Macs von allen außer Adobe ignoriert wurden. Java -Kompatibilität kann viel nützlichen Code mitbringen, aber Apple hat Java nie als seine erste Wahl angesehen. (In der Tat sind iOS -Smartphones reibungsloser als der Android, den ich benutze, also hat Steve vielleicht Recht.)
Viele Kämpfe in Java haben auch große Schmerzen dazu gebracht. IBM mag Java, hat aber gegen Sun gekämpft. Die Entscheidung von IBM, das exzellente IDE -Tool zu bezeichnen, das es entwickelt hat, wurde von Suns Mitarbeitern noch nie ohne weiteres akzeptiert. Sun hat das Geschäftsfeld nie so tief verstanden wie IBM.
Trotz dieser Gründe, obwohl Java -Schöpfer bei der Entwicklung von Java viele Fehler haben, wächst Java immer noch rasch und hat im Bereich der Serveranwendungen fruchtbare Ergebnisse erzielt, wodurch die grundlegenden Geschäftsanforderungen im Bereich Desktop -Anwendungen erfüllt werden. Alle Technologien müssen in politischen Turbulenzen voranschreiten, aber Java wird schwieriger und weiter und beweist, dass Java für viele Anwendungen normalerweise eine ausgezeichnete Wahl ist.
Der Hauptgrund, warum Java weiter dominiert, Punkt 2: Die Magie der Threads
Eine der Stärken der virtuellen Java -Maschinen ist die Multithreading -Kontrolle. JVM hat hervorragende Optimierungen für die Stabilität des Durchführens von Hunderten von Fäden auf großen Multi-Core-Maschinen gemacht. Dies ist auch der Grund, warum andere Sprachen Cross -Compiler und Emulatoren erstellen, um auf dem JVM zu laufen.
Diese Fähigkeit von Java zieht auch viele Websites mit hohem Handelsverkehr an. Sie können sich auf dem Desktop entwickeln und dann auf den Server werfen, damit der JVM Multi-Core-Funktionen ausführen kann.
Ruby ist aufgrund seiner prägnanten Syntax und der guten Quellcode -Lesbarkeit zu einem aktuellen Rivalen von Java geworden. Aber als die Leistung zu einem Engpass wurde, wechselten Ruby -Entwickler nach Jruby, eine in Java simulierte Rubinumgebung und verbesserte Fadenverarbeitungsfunktionen unter hohen Lasten. Die Handhabung der Details durch Suns alte Affen machte Jruby sehr beliebt. (Anmerkung des Übersetzers: Es scheint, dass die meisten Leute Ruby -Programme schreiben und dann Jruby verwenden, um Krieg zu führen und auf den Server zu werfen ...)
Der Hauptgrund, warum Java weiter dominiert, Punkt 3: Java ist die Sprache für Anfänger
Die Religion, die Armee und der Wohlstand des Landes sind untrennbar mit der Gehirnwäsche des Chinesen in ihrer Jugend untrennbar miteinander unterzogen. Als Universitäts -AP -Computerkurs (Anmerkung des Übersetzers: Highschool -Schüler können an die Universitätsnachweise eingehen und zählen. Die vom American University Council bereitgestellte Institution, die für die USA verantwortlich ist), bedeutet, dass viele Studenten zum ersten Mal mit Java in Kontakt kommen. Aus diesem vorgefassten Grund werden sie, wenn sie andere neue Sprachen lernen, über die Vor- und Nachteile von Java nachdenken. Auch wenn die meisten Schüler Karriere wechseln und andere Sprachen lernen - obwohl die meisten Schüler Java nach dem Erreichen von Kursen beiseite werfen -, werden sie beim Denken immer noch von Java beeinflusst.
Java als Lehrsprache hat ihre Gründe. Einige junge Affen mögen es nicht, Datentypen zu deklarieren, und denken, dass es so ist, als ob jemand Sie bittet, Overalls zu tragen und einen Gürtel zu tragen. Dies mag abstrakt erscheinen, aber um jungen Affen einige der Prinzipien von Computern zu verstehen, ist dies eine gute Methode. Lassen Sie junge Affen beim Schreiben von Code Datentypen deklarieren, und dann wird der Compiler ihnen mitteilen, dass die Datentypen nicht übereinstimmen und nicht kompiliert werden können, um die zugrunde liegenden Prinzipien des Computers besser zu verstehen.
Einige sogenannte modische Sprachen haben lockige Klammern aufgegeben, weil sie es problematisch finden, sie aufrechtzuerhalten. Dies mag wahr sein, aber lockige Klammern sind für diese Neulinge sehr nützlich, da dies ihnen hilft, verschachtelte Codeblöcke zu verstehen. Curly -Zahnspangen helfen Neulingen, alle Nisten zu zerlegen.
Einige Menschen möchten hart arbeiten, um ihre eigene Sprache zu fördern, und in den meisten Fällen ist ihre geliebte Sprache freier und hat nicht so viele Einschränkungen und Regeln wie Java. Sie haben eine sehr gute Idee, aber sie ignorieren die Tatsache, dass die Grammatik in der späten Entwicklung offensichtliche Probleme hat. Einige Leute finden, dass dieses "Tragen von Overalls und Tragen von Gürteln" erstickt, aber Java fördert von Anfang an bessere Programmiergewohnheiten. Wenn Neulinge gut geschult sind, können sie diese kostenlose und gefährliche Programmierung bewältigen.
Der Hauptgrund, warum Java weiter dominiert, Nr. 4: plattformübergreifende Kompatibilität (bereits in der Nähe)
Obwohl Java nicht die erste Sprache ist, die plattformübergreifende Kompatibilität bereitstellt, ist Java die beliebteste (plattformübergreifende Sprache) geworden. Dies bedeutet nicht, dass Java perfekt ist - eine fehlende Bibliothek oder eine nicht übereinstimmende Bibliothek führt zum Absturz des Programms. Sie können keine Desktop -Programme einstellen, für die viel Speicher mit dem neuesten JRE 1.7 auf einem Java Me -Telefon zusammengestellt wird. Java ist nicht so kompatibel.
Aber Sun und jetzt haben Oracle die besten Anstrengungen unternommen, um Programme auf Plattformen zur Verfügung zu stellen. Wenn ein Programm (nicht auf mehreren Plattformen verwendet werden kann), sind die Gründe (die diese Probleme verursachen) normalerweise verständlich. Wenn Sie die entsprechende Java -Version verwenden und sicherstellen, dass genügend Speicher vorhanden ist, funktioniert (das Programm) im Allgemeinen ordnungsgemäß. Java -Programmierer können ihre Desktop -Entwicklungs -Tools verwenden, um das Zielgerät, möglicherweise ein Telefon oder einen Server, zu codieren und auf dem Ziel zu bereitstellen. Wenn der Compiler die richtige Bibliothek enthält und die richtige Version verwendet, kann der Code ausgeführt werden. Dies ist ein wertvolles Merkmal.
Der Hauptgrund, warum Java weiter dominiert, Nr. 5: Continuous Erfolg auf Chips
Java hat vielleicht noch nie große Anwendungen im Desktop -Bereich erstellt, aber es hat eine Brutstätte in der mobilen Welt gefunden - ein explosives Marktsegment. Die Android -Plattform basiert auf Java von oben bis unten, und ihre Verkäufe übertreffen das iPhone heute leicht.
Diese dominante Position ist nicht neu. Java Me als optimierte Sprache und VM wurde bei vielen sogenannten Feature-Telefonen häufig verwendet, und die Anzahl der Smartphones auf der Welt beträgt fast zehn Milliarden.
Wenn Sie sie alle mischen, ist der Vorteil von Java unglaublich.
Der Hauptgrund, warum Java weiter dominiert, Nr. 6: Blu-ray
Java wurde einst "Oak" genannt und war eine Sprache für Set-Top-Boxen, und Sun wollte diesen Markt besetzen. Die Dinge lief nicht genau wie geplant, aber Java fand einen geeigneten Ort im "Wohnzimmer". Der Blu-ray-Standard basiert auf Java, und jeder, der der Blu-ray-CD zusätzliche Inhalte hinzufügen möchte, muss seine Javac-Compiler-Version erhalten.
Blu-ray-Discs beschränken sich nicht auf das Speichern von Videoinhalten. Diese zusätzlichen Funktionen und interaktiven Tools können mit einem reinen Java -Code geändert und verbessert werden. Blu-ray-Discs sind eine Mischung aus komprimiertem Video und komprimiertem Java-Bytecode. Mit dem Blu-ray-Standard können Sie viele Funktionen erzielen.
Der Hauptgrund, warum Java weiter dominiert, Nr. 7: Curly -Zahnspangen funktionieren gerade rechtzeitig
Diese Enthusiasten von trendigen Sprachen wie Ruby, Python oder Coffeescript verachteten glücklich, wie Java (und C) Programmierer wiederholt lockige Klammschlüsseln mussten, um den Beginn und Ende des Codessegments klar auszudrücken. Zahnspangen, lockige Zahnspangen und sogar quadratische Klammern - diese Menschen hassen sie tief. (Ich hasse sie auch selbst, aber ich vermisse immer noch die Programmierwege, es gibt einige Arten von Lisp -Sprachen, mit denen Sie alles mit einer quadratischen Klammer beenden können.)
Das Ändern der Interpunktionsmarken beseitigt jedoch die Komplexität nicht. Wenn es nützlich ist, versteckt oder verbirgt es die Komplexität. Nachdem Sie leere Leerzeichen wie Registerkarten verwendet haben, können Sie nur die Dinge spüren, die Sie nicht mit Intuition sehen können. Wenn die IF -Anweisung nur eine Codezeile anführt, wird es kein Problem geben, aber wenn viele Schichten verschachtelt sind, wird es schwierig sein, klar zu erkennen. Wenn ich in Python programmiere, zähle ich diese Einsteiger immer wieder. Nur weil es so aussieht, dass Englisch nicht bedeutet, ist es so einfach wie ein Satz zu verstehen.
Der Grund, warum Java weiter dominiert, Nr. 8: Groovy
Wenn Java -Entwickler eine sauberere und einfachere Syntax mit dynamischen Typen haben mussten, mussten sie keine neuartige Sprache ausführen. Sie können Groovy verwenden, ein ordentliches Werkzeug mit einem Präprozessor, das Java -Bytecode erzeugen kann. Diese Sprache ist auch vollständig in Java integriert, sodass Sie Anrufe an Java -Bibliotheken in Ihr Groovy mischen können. Es ist wie das Schreiben von Java -Code -Abkürzung.
Diese Flexibilität ermöglicht es den Entwicklungsingenieuren, einen Ausweg für Probleme zu finden. Natürlich ist Groovy langsam - dies ist normalerweise, wenn dynamische Methodenaufrufe verwendet werden - Entwickler können Java jederzeit verwenden, um wichtige und zeitaufwändige Kernvorgänge neu zu schreiben.
Der Grund, warum Java weiter dominiert, Nr. 9: Java Virtual Machine
Java Virtual Machines sind für den Zweck des Ausführens des vom Java -Compiler generierten Codes entworfen und optimiert. Irgendwann erkannten Entwickler, dass auch Java -Virtual -Maschinen auch andere Codes ausführen können. Solange Compiler Standard -Java -Bytecode produzieren, kümmern sich die virtuellen Java -Maschinen nicht um die Programmiersprache, die sie verwenden. Die Entwickler von Haskell, Scala und Clojure haben ihre Compiler auf diese Weise entwickelt, um in den Java Express -Zug zu steigen. Und sie sind nur einige der besseren Vertreter in diesem Ökosystem, das von Java Virtual Machines erzeugt wurde.
Die Attraktion ist offensichtlich, Sonne/Oracle arbeitet hart daran, eine plattformübergreifende Umgebung zu schaffen, und alle anderen profitieren davon. Sun/Oracle Engineers beseitigen die Unterschiede zwischen Plattformen und berücksichtigen Kompatibilitätsprobleme, und dann kann jeder die Programme ausführen, die er ausführen möchte.
Microsoft hat diese Idee beim Erstellen von C# ausgeliehen (und erweitert), um Compiler für die meisten wichtigen Sprachen zu entwerfen, damit die virtuelle C# -Maschine alle in diesen Sprachen geschriebenen Programme ausführen kann. C# Programmierer sagen, dass sie Programme in vielen verschiedenen Sprachen schreiben können, und führen Sie sie einfach auf einer virtuellen Maschine über ein Windows -Box aus. Wie flexibel!
Der Grund, warum Java weiter dominiert, Nr. 10: Der größte Teil der NoSQL -Revolution basiert auf Java
Vor langer Zeit war die Datenbank eine mysteriöse Black -Box, die Informationen speicherte und schnell und effizient auf Abfrageanfragen reagierte. Dann kam die NoSQL -Revolution, und Programmierer erkannten, dass sie selbst ihre eigenen Datenbanken schreiben und ihren Code entsprechend ihren Bedürfnissen beschneiden konnten. Viele der wichtigsten NoSQL -Tools sind in Java geschrieben. Cassandra, Lucene, Elasticsearch, HBase und NEO4J sind nur einige der häufig genannten NoSQL -Optionen. Dann gibt es einige Programme wie Acid-State, die in Haskell geschrieben und in Java-virtuellen Maschinen ausgeführt werden.
Diese Tools sind normalerweise Open Source und können leicht integriert werden. Einige Entwickler führen es unabhängig, während andere sie in ihre eigenen Module wie Bibliotheken integrieren. In beiden Fällen wird Java in der Datenbankschicht zu einer gemeinsamen Sprache, um sicherzustellen, dass das Leben von Java -Entwicklern einfacher ist. Sie sind weniger besorgt über Störungen aufgrund von Charakter -Codierung und Zeilenendezeichen. Dies bedeutet, dass Java -Entwickler die fruchtbaren Früchte der NoSQL -Revolution genießen können.
Der Grund, warum Java weiter dominiert, Nr. 11: Minecraft-Spiele sind in den gemeinsamen Komplex von Post-00s integriert
Vielleicht verspotten sich die Leute von Brooklyn, die nicht-Mainstream-Leute sich über Java verspotten, aber Java-Programmierer sind einen Schritt voraus. Während die Ruby Fashion Group eine Gruppe ihrer eigenen Fans sammelte, verliebte sich die nachfolgende Generation in Java. Warum? Ein Wort: Minecraft. Es ist in Java geschrieben. Wenn Kinder das Spiel erweitern möchten, müssen sie Java lernen, um ihre Plugins zu entwerfen. Dies stellt sicher, dass die nächste Generation von Programmierern zuerst Java lernen wird.
Der Grund, warum Java weiter dominiert, Nr. 12: Open Source
Sun war schon immer einer der Führer im Open -Source -Feld, aber es zögert, Java vollständig zu öffnen. Dies hat Java -Programmierer jedoch nicht daran gehindert, viele großartige Bibliotheken und Projekte mit losen Open -Source -Lizenzen zu veröffentlichen. Das Apache -Projekt hat eine Lizenz verwendet, für die nicht viel Rückkehr erforderlich ist, um einen hervorragenden Java -Code bereitzustellen.
Sun vervollständigte die Arbeit, den größten Teil des Code im Rahmen der GPL -Lizenz im Jahr 2007 aufzudecken, und seitdem wollten er und sein neuer Eigentümer Oracle hart daran arbeiten, zu einem qualifizierten Verwalter von Java zu werden. Natürlich hat diese offene Haltung Oracle nicht davon abgehalten, Google in eine chaotische Rechtsklage zu ziehen, aber andererseits ist die Java -Plattform weitgehend offen und kostenlos.
Viele Menschen hassen es, aber Java bewegt sich weiter vorwärts
Es ist wahr, dass Java seine eigenen Probleme hat und es immer mehr Menschen geben wird, die Java hassen, und sie werden den Online -Kommentarbereich mit ihrer Unzufriedenheit füllen. Der Java -Müllsammler wird im Programm geringfügige Frustration verursachen. Die starken Regeln für das Schreiben von Programmen können diese wirklich schlechten Codes nicht aufhalten. Die Annotation ist zu kompliziert. Die Eigenschaften sind nicht so häufig wie zuvor. Zahnspangen sorgen für Verwirrung. Die Liste ihrer Nachteile ist lang, aber normalerweise vernünftig.
Derzeit gibt es jedoch keinen Rivalen, der in Breite und Tiefe damit konkurrieren kann. Während einige Beschwerden leicht zu lösen sind, kann die Lösung selbst ihre eigenen Probleme mit sich bringen. Vielleicht ist JavaScript am nächsten, das sich auf den blitzschnellen Knoten.js stützt, der im Serverbereich immer attraktiver wird. Aber diese Ideen können kopiert werden und Programmierer können sie auch verwenden, um schnelle Java zu schreiben.
Am Ende ist dies einer der Vorteile von Java: Es wird alle Programme ausgeführt und akzeptiert Änderungen. Wenn Sie unterschiedliche Funktionen benötigen, können Sie die meisten Bibliotheken durch Ihren eigenen Code ersetzen. Sprachen sind Open Source und flexibel. Unabhängig davon, welche Einschränkungen die Sprache oder Plattform sind, können sie relativ leicht gelöst werden. Dies bedeutet, dass Java -Programmierer weiterhin einer der produktivsten Menschen sind. Auch wenn verwandte Bücher nicht mehr die meistverkaufte Liste belegen und Software-Updates nicht so häufig sind wie zuvor, existiert Java weiterhin oder sogar erfolgreicher.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.