Advanced architect road

                      Advanced architect road

  How to learn from a junior Java programmer grow into a qualified architect or a qualified architect should have a kind of technical knowledge, which is just entering the workplace is not only a junior programmers also work in three five years after the start of the confused old programmers often asked questions. Hopefully this article will be you have seen the most comprehensive and authoritative answer.

  

  A: Programming Fundamentals

    Either the C or C ++, Java or whether it is PHP, wanted to be a qualified programmer, basic data structures and algorithms still have the basis. The following articles from idea to realization, as you tease out common data structures and algorithms classic. 

    Common data structure 1-1

      Array, linked list, heap, stack, queue, Hash tables, binary trees, etc.

    1-2 ALGORITHM

      Analysis of the computational complexity of the algorithm time complexity and space

      Algorithm thinking: recursion, recursive, exhaustive, greedy, divide and conquer, dynamic programming, iteration, branching boundaries

    1-3 classical algorithm

      Classic Sort: insertion sort, bubble sort, quick drain (partition exchange sort), direct selection sort, heap sort, merge sort

      Classic look: sequential search, binary search, binary sort tree to find

    1-4 advanced data structures

      B + / B- number, red-black trees, like FIG.

    1-5 advanced algorithms

      FIG depth-first search and breadth first search graph, topological sorting, the Dijkstra algorithm (single-source shortest path), Huffman coding, Euclidean algorithm, minimum spanning tree, etc.

 

  Two: Java language foundation

    Born more than twenty years of Java language, with its cross-platform, object-oriented, distributed computing suited to the characteristics of widely used Web sites, mobile devices, desktop applications, and has been for many years the forefront of top TOBIE list of programming languages more recently triumphed. What Java outstanding and distinctive place first of all must be clear.

    2-1 basic grammar

      Overload Java syntax, constants and variables, variable scope, and a method of the operator, the program flow control, all the basic data types and packaging

    2-2 Important: collections

      Collection and a variety of List, Set, Queue, Map implementation and integration relations and realize the principles

      Collections和Arrays 

    2-3 Other JavaAPI

      String and StringBuffer, System and Runtime classes, Date and DateFomat class

      java.lang package

      java.util package (collections system, regular expressions, zip, and time, random numbers, attributes, resources and the like Timer)

      java.math package

      java.net package

      java.text package (various formatting, etc.)

      java.security package

    2-4 object-oriented interface for

      Three characteristics of the object: encapsulation, inheritance and polymorphism, advantages and disadvantages of how to design class, this keyword-based design principles, final key, rewriting and overloading instantiation process static keyword object; and a method constructor parameter transfer process internal class, the abstract class interface object polymorphism (conversion between sub-classes and superclasses, reference carton parent subclass), application of abstract classes and interfaces in the polymorphic

    2-5 JVM memory model, garbage collection

    About 2-6 abnormalities

      Throwable / Error / Exception, Checked Exception vs. Unchecked Exception, unusual catch and throw, catch an exception principle, finally use

    2-7 Multithreading

      The concept of threads and processes

      How to create multiple threads in the program, thread-safety issues, analyze thread pool thread synchronization deadlock problem of communication between threads

    2-8 IO

      java.io package, understanding IO system based on the characteristics and design ideas tube model and the common usage scenarios IO classes.

      File and related classes, and the OutputStream InputStream byte stream, a character stream Reader and Writer, and the conversion of the corresponding flow and the buffer flow pipe flows, and a character byte, packet stream, and using conventional packaging IO performance analysis

    2-9XML

      Familiar with the SAX, DOM and JDOM advantages and disadvantages and be able to use one of them to complete XML parsing and content processing; principles of these types of analytical methods

      2-10 advanced features

      Reflection, agents, generics, enumerations, Java regular expressions

    2-11 Network Programming

      The principle of network communication protocols and principles applicable scenario, Socket Programming, WEB server

    2-12 JDK1.5, JDK1.6, JDK1.7, JDK1.8 each version than the earlier version which adds new features, which were lifting

`2-1326 design patterns

  Three high-tech Java

    ES search engine technology,

    solr search engine technology,

    solr rights framework,

    spring security rights framework,

    MQ: message queue Technology

    Database clustering technology listed as mycat

    redis some of the high-level mechanism

    netty communications framework technology

    nginx reverse proxy load balancing technology 

  Four mainstream technology framework

    spring a very classic framework

    spring mvc Java web framework

    spring boot is now very popular Java framework of a simplified configuration

    spring cloud Java distributed framework

    dubbo Java framework for distributed

  Five visits source capability

    Learn to look at the source code is a Java architect of the necessary skills, in order to become an architect must learn to look at the source code in order to become a true architect

      spring source,

      spring boot source,

      dubbo source

      spring cloud and other source

   Then the amount of such a course learning system is, and if there is no professional teacher to go with it, learn it difficult to complete such a large set of system, I have been working for five or six years, it has not learned complete such a large set of systems, so one day my teacher sent me a picture he said he would put forward a line of education. finishing a set of curriculum system and I went to see the next, I feel particularly suitable work experience want to attack the architect has been no complete system has been stuck in the middle-class engineer this stage, the following to share with you this map

  

    See this picture when it feels substantial in content but my heart feel bad teacher can not learn or ability, then my teacher told me to say that yes, explain the architects speaking for the Thunder put the whole face, and the teacher will add each individual contact information, comprehensive counseling to learn if you want to learn or want to be the next to go consulting architect of my teacher Li:. QQ: 956442993, newly graduated students do not go Contact because this course is not suitable for you, you need most now is to exercise your own business logic , but has not worked for a year to be promoted to senior engineer or architect, there is a need to consult.

Guess you like

Origin www.cnblogs.com/guanzhuang/p/11829593.html