search

Home  >  Q&A  >  body text

关于如何提升java的能力

高洛峰高洛峰2889 days ago387

reply all(10)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:29:21

    --------Thank you for the invitation----------
    The following is a summary of my own work time, which may not be comprehensive. I will update the answer when I have time. I hope it will be of some help to you. I also hope to share more feedback and corrections.

    1. Consolidate the basics (Java): multi-threading, high concurrency, reflection, IO, NIO, design patterns, server programming, server push, object-oriented thinking

    2. Consolidate the basics (front-end): jQuery, Html5, Node.js, AngularJS.

    3. Consolidate the foundation (database): OSCache, EHCache, Redis, Mongodb, etc. caching technology

    4. Big Data:

      1. High concurrency (test your own projects under high concurrency)

      2. Large data volume (continuously increase the data volume of the project until the system cannot support it and then you can think about how to solve it)

      3. Storage: sub-database and sub-table storage, distributed file storage, memory storage

    5. Write a project:

      1. Personal technology stack blog (show your skills in the form of a tree or timeline)

      2. Build a CMS: It’s best if people can actually use it after it’s done

      3. Make a crawler: crawl some useful information

      4. Write your own framework: Individuals can use this framework to quickly write projects and improve development efficiency

      5. Participate in open source projects: oschian, github

      6. Participate in technology summits and learn about new technologies.

    6. Learn other languages: Don’t be limited to Java, you can appropriatelyunderstand other language features, or other technologies

    7. Share technology: Share your technology with others. While teaching others, it is a good opportunity for you to consolidate and review.
      What others can learn through your teaching is also a test for you

    8. Summary yourself: Brag more to your gay friends, and then you will find that you are still far behind.


    A bird that yearns to be a cow!

    reply
    0
  • 黄舟

    黄舟2017-04-18 09:29:21

    Run what you wrote under 1,000 concurrency, run it under 10,000 concurrency, and you will find that you still have a lot to learn

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-18 09:29:21

    I have also been working for 2 years. Gradually, I found that I had encountered a bottleneck. I bought a lot of books, but I didn’t know which one I wanted to read, and I always used various excuses to deceive myself about not having time to read them.
    I’ve been thinking a lot lately. There is still a long way to go, and sinking like this is not an option.
    No matter what, it is still necessary to continue learning.
    Now that I can’t read a book, I just watch videos.
    If you don’t have the motivation to learn knowledge, just mess around with tools. Now whenever I have time, I will toss around various tools and try various markdown editors to see which one suits me. Installed idea into the vim plug-in; started to learn emacs from scratch, learned to use org-mode to arrange one's work, study and life; tossed the server, tossed over the wall...all kinds of tossing. Maximizing the efficiency of tools will always pay off.
    Then I am still planning to write some code generators myself to do some things that I need for my work. Even if it can only be run using the main method. Try to reduce yourself to redundant tasks.
    I always feel like there is still a long way to go... I don’t do anything because I am confused. That time would have been wasted.
    Just do whatever comes to your mind. There is always something to gain, even if what you do seems low to others...

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:29:21

    Hello, I am in the same situation as you now.
    My solution is to come back and read "Thinking in Java". You will get unexpected gains.
    Look at more open source code, for example, take a look For the source code of spring, buy "Spring Technology Insider" to take a look.
    Have a clearer understanding of various versions of java.
    In-depth study of knowledge such as jvm memory model

    reply
    0
  • 大家讲道理

    大家讲道理2017-04-18 09:29:21

    Be familiar with the framework and process. Just try to write something yourself in your current environment. Just like what was said on the first floor, you will find that you know too little!

    reply
    0
  • 迷茫

    迷茫2017-04-18 09:29:21

    Understand the source code of the basic framework, and then write a "basic framework" for fun

    reply
    0
  • ringa_lee

    ringa_lee2017-04-18 09:29:21

    Thank you everyone for your answers, I may have a clearer direction

    reply
    0
  • PHP中文网

    PHP中文网2017-04-18 09:29:21

    keep coding

    reply
    0
  • 阿神

    阿神2017-04-18 09:29:21

    Operating system, compilation principle, computer composition principle. I'm actually learning, and I can't explain the importance of these three doors, but I personally feel that every time I understand a little bit of these "basic" things, I feel like I've opened several more doors. . . Another thing is to look at the problem from the perspective of historical development, why is there C? Why is there Java? Why is there a graphical interface and why is there a network? . .

    reply
    0
  • 迷茫

    迷茫2017-04-18 09:29:21

    http://mp.weixin.qq.com/s?__biz=MzIxMjAzMDA1MQ==&mid=2648945421&idx=1&sn=98b9c1b5fa004ec49d1f9f0484185c38#rd

    http://mp.weixin.qq.com/s?__biz=MzIxMjAzMDA1MQ==&mid=2648945438&idx=1&sn=20deb07c871a3460b7d8d5fb2f304e05#rd

    This is the importance of these three courses

    reply
    0
  • Cancelreply