Heim  >  Artikel  >  Java  >  Der Schlüssel zum Wachstum als Java-Programmierer

Der Schlüssel zum Wachstum als Java-Programmierer

大家讲道理
大家讲道理Original
2017-08-19 14:05:571244Durchsuche

Java wird für Projekte verwendet! Der Hauptanwendungsbereich von Java ist die Projektentwicklung auf Unternehmensebene! Wenn Sie sich an der Projektentwicklung auf Unternehmensebene beteiligen möchten, müssen Sie die folgenden Punkte beherrschen:
1. Beherrschen Sie die grundlegenden Schritte der Projektentwicklung
2. Verfügen Sie über ausgeprägte objektorientierte Analyse- und Designfähigkeiten
3. Master-Use-Case-Antrieb, Mainstream-Entwicklungsmethoden mit Architektur als Kern

Niemand möchte sich ein Leben lang damit zufrieden geben, einige Fähigkeiten zur Code-Implementierung zu beherrschen. Andere sagen einem, was man erreichen soll, und man nutzt Code-Stacking, um etwas anderes zu erreichen Anforderungen der Menschen! Man muss lernen, aus der Perspektive des gesamten Projekts zu denken! Als Projektmanager müssen Sie lernen zu denken! Als Architekt müssen Sie lernen zu denken! Sie müssen analytische Methoden für ein bestimmtes Problemfeld beherrschen!

Über Grundwissen: Sie können sich diese Substantive oder Wissenspunkte ansehen und sehen, ob Sie ihnen eins, zwei, drei oder vier sagen können.

JavaSE
----Grundlegende Syntax, Datentypen, Operatoren usw.: int, long, Integer, Long, if, else, for, while
----Objektorientiert : Klasse (Klasse), Objekt (Objekt), Instanz (Instanz), Zustand (Zustand), Verhalten (Verhalten), Feld, Methode, neu, Sichtbarkeit (Zugriffskontrolle), Attribut, Eigenschaft, Paket, Import, statische Variable, Klasse Variable, Instanzvariable, Heap, Methodenbereich, Stapel, GC (Garbage Collection), Überschreibung, Überladung, Objekttransformation (Casting), Polymorphismus, dies, super
----Ausnahmebehandlung: Fehler bei der Kompilierung und Ausführung verstehen -time Der Unterschied zwischen Fehlern, Ausnahme, RuntimeException, geprüfter Ausnahme, ungeprüfter Ausnahme, versuchen, abfangen, schließlich neue XXXException auslösen, XXXException auslösen, Grundprinzipien der Ausnahmebehandlung
----Arrays und Sammlungen: Definition und Verwendung von Arrays, Sammlung, Liste, Menge, Karte, ArrayList, HashSet, HashMap, Iterator, equal, hashCode, Comparable, Comparator
----Gemeinsame Klassen: String, intern, konstanter Pool, StringBuffer, java.util.Date , SimpleDateFormat, Regex (regulärer Ausdruck)
----Reflexionsmechanismus: Klasse, Methode, Feld, Aufruf, newInstance, BeanUtils (Apache-Commons), PropertyUtils (Apache-Commons)
----Eingabe und Ausgabestream: InputStream, OutputStream, Reader, Writer, Adapter-Entwurfsmuster und ursprüngliche Stream-Klasse, Decorator-Entwurfsmuster und gepackte Stream-Klasse, Objektserialisierung und -deserialisierung
----Multithreading: Thread, Runnable, Sleep, Wait, benachrichtigen, synchronisieren, sperren

Servlet und JSP
----HttpServlet, doGet, doPost, HttpServletRequest, HttpServletResponse, request.getParameter(), request.setAttribute(), request.getAttribute(), request . getSession(), ServletContext, Filter, web.xml, Tomcat, Weiterleitung und Umleitung, zustandslose Natur des http-Protokolls, Cookies, JSP Scope Object, ,

HTML und JavaScript
----Sie müssen in der Lage sein, gängige Webseiten-Tags zu verstehen, die Methoden zur Einführung von JavaScript in Webseiten zu verstehen und die grundlegende Syntax und Verwendung von JavaScript zu verstehen

Das Obige ist alles, was Sie zum weiteren Erlernen von Java benötigen. Insbesondere einige Fachbegriffe und Substantive. Wenn Sie diese Substantive so freundlich finden, als würden Sie Ihren eigenen Vater sehen, bedeutet dies, dass Sie mit den Grundkenntnissen von Java bestens vertraut sind.

Als nächstes kommt SSH:
Für Anfänger sind diese drei Hauptframeworks zu rätselhaft und es scheint, dass sie das wichtigste Wissen sind! Aber für professionelles und technisches Personal mit langjähriger Erfahrung in der Java-Entwicklung und für diejenigen, die gut in Java sind, sind diese drei großen Frameworks nicht sehr interessiert! Sind sie nicht wichtig?

Viele Unternehmen nutzen mittlerweile diese drei großen Frameworks, daher betrachten viele Unternehmen die Beherrschung dieser drei großen Frameworks auch als Voraussetzung für die Einstellung von Mitarbeitern. Es ist unbestreitbar, dass es viele große Unternehmen gibt, die diese drei Hauptrahmen nicht verwenden. Nach Jahren der Entwicklung haben diese Unternehmen eine gewisse Menge an Technologie angesammelt und ihr eigenes einzigartiges technisches Rahmensystem gebildet. Diese drei Hauptrahmen können als sehr wichtig oder als unwichtig bezeichnet werden.

Der wichtige Grund ist, dass diese drei Frameworks schöne Lösungen für häufige Probleme in der JavaEE-Entwicklung bieten. Sie enthalten die Bemühungen und Ideen der meisten NB-Entwickler in dieser Branche Erhalten Sie einen Einblick, was diese talentierten Menschen an der Spitze der Technologie über ein Problem denken und welche Designideen sie zur Lösung des Problems verwenden. Sie haben also nicht viel Erfahrung in der Projektentwicklung, wie sind Ihre Erfahrungen? Erfahrung bedeutet, dass Sie wissen, auf welche Probleme Sie stoßen können, welche Lösungen es für jedes Problem gibt, welche Lösung in einer bestimmten Situation besser ist, welche Methode nicht so gut ist usw.! Wenn Sie noch nie an einem Projekt gearbeitet haben, werden Sie nicht wissen, auf welche Probleme Sie möglicherweise stoßen, und diese Probleme sind oft sehr kritisch! Wenn es nicht gut gelöst wird, beeinträchtigt es die Stabilität, Skalierbarkeit usw. Ihres Programms! Die drei Hauptrahmen vermitteln Anfängern ein Verständnis dafür, auf welche Probleme Sie in Zukunft stoßen könnten, und bieten Lösungen für diese Probleme!

Wenn Sie verstehen, warum diese drei Hauptrahmen wichtig sind, können Sie auch verstehen, warum diese drei Hauptrahmen auch als unwichtig bezeichnet werden können. Wenn Sie viele Projekte entwickelt und auf verschiedene Probleme gestoßen sind, haben Sie diese Probleme einzeln gelöst. In den Augen dieser Leute sind die drei Hauptframeworks (gibt es N-Frameworks? Haha) alle Wolken!

Zu welcher Art von Person gehörst du? Wenn Sie nicht viel Erfahrung in der Projektentwicklung haben, sind die drei großen Frameworks für Sie sehr wichtig! Darüber hinaus wissen Sie hieraus auch, wie Sie diese drei Hauptrahmenwerke erlernen. Beim Studium der drei Hauptrahmen liegt der Schwerpunkt darauf, Ihnen Probleme aufzuzeigen und Ihr eigenes aktives Denken anzuregen. Vielleicht sind Ihre Ideen idiotisch, aber es sind schließlich Ihre eigenen Ideen Sie wissen nicht, was großartige Leute denken. Woher wissen Sie also, dass Ihre eigenen Ideen idiotisch sind? Im Verlauf dieser Kollision von Ideen werden Sie sich nach und nach verbessern! Nachdem Sie die drei wichtigsten Frameworks kennengelernt haben, sollten Sie nicht nur einige Aktionen, einige Dienste und einige Zuordnungsdateien sehen Sie sollten nicht nur wissen, dass es in struts2 eine Reihe von Interceptoren gibt, Sie sollten nicht nur eine Reihe von JAR-Paketen sehen ...

Wenn Sie das nur wissen, nachdem Sie eine Reihe von JAR-Paketen kopiert und ein definiert haben Reihe von Konfigurationsdateien, die drei wichtigsten SSH-Frameworks Es kann für Sie ausgeführt werden und funktionieren. Dann beherrschen Sie leider immer noch nicht die Essenz der drei wichtigsten Frameworks! Bitte beantworten Sie die folgenden Fragen:

Struts2:
Warum müssen Sie für jede Anfrage ein Aktionsobjekt erstellen?
Welche Probleme löst „refreshModelBeforeResult“ bei der Konfiguration des ModelDriven-Interceptors?
Warum filtert der in web.xml konfigurierte StrutsPrepareAndExecuteFilter alle Anfragen?
Können Sie mir bitte etwas über ValueStack erzählen?
Wie implementiert Struts2 das MVC-Entwurfsmuster?

Frühling:
Warum möchten Sie Frühling nutzen?
Können Sie bitte über IOC/DI sprechen?
Was ist deklaratives Transaktionsmanagement? Warum deklaratives Transaktionsmanagement verwenden? Wie implementiert Spring das deklarative Transaktionsmanagement?
Warum sollten bei der Integration von Spring und Hibernate und der Definition von Transaktionsverwaltungsfunktionen andere Methoden als Add-, Lösch- und Aktualisierungsvorgänge, also Methoden, die hauptsächlich Abfrageaufgaben ausführen, als schreibgeschützt definiert werden?

Ruhezustand:
Könnten Sie uns bitte Ihr Verständnis der OR-Zuordnung mitteilen?
Viele Leute sagen, dass Hibernate nicht für große Projekte geeignet ist und Leistungsprobleme hat.
Warum muss Hibernate eine Datenbankkennung definieren?
Warum empfiehlt Hibernate, dass Ihre Entitätsklassen die Methoden hashCode und equal implementieren?
Sprechen Sie über Ihr Verständnis der Beziehung zwischen der Datenbank-ID und dem Datenbank-Primärschlüssel in der Hibernate-Entitätsklasse?
Sprechen Sie über Ihr Verständnis der Beziehung zwischen Hibernate-Assoziationszuordnung und Datenbank-Fremdschlüsseln?
Wird der Ruhezustand beim Aufruf der session.save()-Methode definitiv eine Einfügeanweisung ausgeben? Sprechen Sie über Ihr Verständnis
Wird der Ruhezustand beim Aufruf der session.update()-Methode definitiv eine Update-Anweisung ausgeben? Sprechen Sie über Ihr Verständnis
Bitte sprechen Sie über die folgenden Substantive, Konzepte oder Verwendungen: lazy, lazy=“extra“, inverse, fetch, fetch=“join“, fetch=“subselect“, Batch-Size
Konfiguration Will lazy="true" definitiv Lazy Loading erreichen?
Bitte sprechen Sie über das „N+1“-Problem in Hibernate.
Können Sie bitte über die Best Practices von Hibernate sprechen?

Die oben genannten sind nicht alle Schlüsselfragen in SSH, aber sie können testen, ob Sie das SSH-Framework flexibel nutzen können! Wenn Sie diese Themen tiefgreifend verstehen, gepaart mit einer entsprechenden praktischen Projektschulung, werden Sie nach und nach zum Experten!

Schließlich Projektentwicklungsfähigkeiten:
Ob Sie Java oder andere Technologien erlernen, Ihr grundlegendes Ziel ist es, Mehrwert für Kunden zu schaffen! Andernfalls werden die Dinge, die Sie mit großer Mühe gelernt haben, mit der Weiterentwicklung der Technologie und der Aktualisierung bald veraltet sein! Daher besteht der Kern der Technologie darin, Technologie zu nutzen, um wertvolle Ergebnisse zu erzielen! Mit anderen Worten: Was auch immer der Kunde braucht, Sie müssen die Technologie nutzen, um das zu schaffen, was der Kunde braucht! Der Grund, warum ein Unternehmen sein Bestes versucht, Sie mit verschiedenen Sozialleistungen zu halten, liegt darin, dass Sie dem Unternehmen extrem hohe Vorteile bringen können! Was haben Sie also, das Unternehmen nutzen können? Welche Ihrer Fähigkeiten schätzt das Unternehmen am meisten?

Das Durchführen von Projekten erfordert viele Fähigkeiten, von denen die wichtigste und grundlegendste die Modellierungsfähigkeit ist (die derzeit am weitesten verbreitete Fähigkeit ist die objektorientierte Modellierung!). Was ist Modellierungsfähigkeit?

Ich werde Ihnen eine Interviewfrage stellen:
Ein Versicherungskartenverwaltungsmodul einer Versicherungsgesellschaft: Der Verkäufer erhält die Versicherungskarteninformationen (Anzahl der Versicherungskarten, Kartennummer, Abholdatum) und verkauft dann Es wird direkt an den Kunden gesendet und der Verkauf wird abgeschlossen. Anschließend werden die Informationen zur Versicherungskarte in das System des Versicherungsunternehmens eingegeben (Informationen des Verkäufers, Informationen des Käufers, Anzahl der gekauften Versicherungskarten, Kartennummer usw.). Der Kunde meldet sich an Website der Versicherungsgesellschaft, um die Versicherungskarte zu aktivieren und auszufüllen (Versichererkartennummer, Aktivierungspasswort und Passwort)

Die Anforderung ist: Wenn Ihnen dieses Modul ausgehändigt wird, was werden Sie tun? Welche Probleme versuchen Sie zu lösen? Kannst du ein Bild zeichnen und mir beschreiben, was deine Idee ist?

Dies ist nur eine Interviewfrage. Da sie nur aus wenigen einfachen Sätzen besteht, habe ich sie hier eingefügt, damit jeder spüren kann, welche Probleme die sogenannte Modellierung lösen muss. Es gibt so viele Probleme im Geschäftsfeld! Vielleicht kann ein Anforderungsdokument mit Dutzenden oder Hunderten von Seiten die Probleme in einem bestimmten Geschäftsfeld klar beschreiben, und es liegt in Ihrer Verantwortung, sie umzusetzen!

Ein Unternehmen möchte ein Anwesenheitsmanagementsystem entwickeln und benötigt eine Anbindung an das bestehende Personalwesen. Sie sind also die technisch verantwortliche Person?

Ein bestimmtes ERP-Projekt möchte ein Schichtmanagementmodul implementieren und es Ihnen überlassen, es abzuschließen.

Beschweren Sie sich nicht darüber, dass der Projektmanager Ihnen zu wenig Informationen gegeben hat (nur ein paar Sätze), und beschweren Sie sich nicht darüber, dass der Kunde seine Bedürfnisse nicht klar beschrieben hat ... Ihr Wert liegt darin indem Sie alle Probleme sortieren und verschiedene Methoden anwenden, um sie auf verschiedene Weise zu lösen, sie nach einer bestimmten Idee zusammenzufassen und sie innerhalb einer bestimmten Zeit einzeln zu lösen !

Sie sollten sich darüber im Klaren sein, dass das Erlernen von Java nicht so einfach ist wie ein Panzerkampf, ein Netzwerk-Flitzer, ein CMS, ein DRP oder ein OA. Sie sollten sich nicht auf diese technischen Details einlassen (obwohl es auch notwendig ist). aber übertreiben Sie es nicht) ), geben Sie sich nicht damit zufrieden, Projektanforderungen im CRUD-Stil zu erfüllen (obwohl dies die Grundlage der Grundlage ist). Es gibt immer ein Ziel vor Ihnen, an dem Sie hart arbeiten müssen aufholen!

In Zukunft werden Sie mit komplexeren Anforderungen konfrontiert sein. Der einzige Zweck Ihres Studienprojekts besteht darin, zu lernen, wie man Anforderungen in die Umsetzung umwandelt, wie man Anforderungen analysiert, wie man konzeptionelle Modelle erstellt und wie man verschiedene rationalisiert Die Beziehung zwischen ihnen, wie Sie entwerfen, wie Sie die geeignete Technologie zur Implementierung Ihres Designs auswählen, wie Sie Ihre Implementierung testen und wie Sie alle Arten von Problemen lösen, auf die Sie stoßen (Leistung, Nachfrageänderungen usw.). Nachdem Sie tatsächlich mehrere Jahre im Unternehmen in der Entwicklung tätig waren, werden Sie mir zustimmen!

Was Sie brauchen, um einen Job mit Java zu finden, ist Projekterfahrung. Projekterfahrung bedeutet, den grundlegenden Prozess der Projektentwicklung zu verstehen, die Projektanalysemethode zu verstehen, die Projektdesignideen zu verstehen und die Fähigkeiten zur Projektumsetzung zu verstehen , und das Projekt verstehen Testmethoden und die Lösungen für verschiedene Probleme im Projekt verstehen! ! !

Es ist also an der Zeit, dass Sie Ihre Ziele kennen!

Das obige ist der detaillierte Inhalt vonDer Schlüssel zum Wachstum als Java-Programmierer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn