I want to share with you useful links, hints and tips that will help you when completing the test task for an internship in a real CodeGym project. Of course, you can just mindlessly accumulate the solution of a test task from the Internet, since there are enough examples, but we want to figure out what we are doing :) This post is for those who did not find familiar words among the stack of technologies required by the task and want to fix it) A couple of weeks ago I got to level 30 and finally got access to the internship test. At first, I was in a stupor and simply did not know where to start and what all these springs and hibernates were doing. Just starting to dig, I ran into a problem: a lot of resources and articles imply that you already have an understanding of the subject area. Simply put, they are too abstruse for beginners and instead of understanding they cause a reaction “this is too difficult!”. Therefore, below I will try, based on my albeit small experience, to share successful links that helped me get a basic idea of \u200b\u200bthe necessary technologies. Those who whined while learning on CodeGym that you need to study a lot yourself - get ready, here you will find a real hell))
So how do you get started on the task?
1. Understand why all these technologies are needed (I would start learning in the following order):
1.1. Maven
Its role in the project is to create the directory structure of your web project (it's standardized) from a special template called "archetype" + pulling libraries into your project (adding dependency to pom.xml). Who passed the bonus task about parsing based on jsoup - there we manually downloaded the library from the Internet and hooked it into the idea. Maven, on the other hand, allows you not to download anything, but simply write in pom.xml which library you want to pull up and use in the project. A quick explanation of what Maven does in pictures -> here .1.2. MySQL
This is your database management system (DBMS). You won’t need any deep knowledge in SQL and DBMS, here I can advise you to install the dbForge program to make life easier, which will help you a lot when creating a database and working with it.1.3. Spring
This framework will be the core of your web application. It is huge and its architecture consists of many modules. The good news is that to get the job done, you only need to understand a few things about Spring: what is Inversion of Control (IoC) and understand how Spring MVC works (what should be the directory structure of your web project, what is a DispatcherServlet, how it interacts with a controller , view and model, etc.). There was especially a lack of materials for beginners, where it would be explained on the fingers. But, thank God, such materials were found: Very simply about IoC, code connectivity, DI (the material is presented in a somewhat frivolous manner, but everything is clear) –> right here (scroll to the next articles below on the page ) . Next, look for what@Autowired
an annotation is. Spring MVC -a cycle of video lessons (the first 11 lessons, each on average 7-10 minutes). Here you will find a cycle of video tutorials, in general I HIGHLY recommend watching this guy's lessons! Despite the funny Hindu English, he explains everything in great detail and clearly, with illustrative examples. He also has lessons on other frameworks. Workflow applications on Spring MVC in pictures - see here .
GO TO FULL VERSION