What web technology do you need to learn for an experienced C ++ developer?

Friends,

I have some experience with C ++, and now I'm starting my way in J2EE (to survive :))). Meanwhile, I have a plan to join the web portal myself. But with very little experience in web technologies, I need to start from scratch. I'm a little confused where to go, and I'm here. PHP, Python or JSP, given the fact that in any case I need to learn J2EE at my work. Should I learn PHP or Python to develop a portal that I expect to get from 80-100K hits per day "IF" everything is going well, or will jsp be enough?

Many thanks

+6
python php jsp
source share
7 answers

Before learning any of them, spend some time in real time and study HTML and CSS in depth. Also learn Javascript and JQuery (or your favorite client-side library). O'Reilly related books are pretty good IMO.

I say that because I think you will find that for most modern websites a lot of wealth is moving to the client side and the server side. According to this model, your code in PHP or JSP will probably look pretty similar (i.e., retrieve data from a database and submit it to your view or in JSON for consumption by the client).

+13
source share

Given that you are used to C ++, you should look at aspx and C # - perhaps closer to your current experience.

However, PHP is a failure, so it should not present any problems. Keep in mind that if you want to make the most of the language, you need to know a little about apache settings and frameworks (cake, codeigniter, zend, etc.)

+1
source share

All the server technologies that you list are “sufficient” for the amount of traffic that you expect if you design your site well in terms of performance and scalability — and therefore many others that you have not mentioned, such as other approaches based on Java, C #, and (last but not least) Ruby (possibly with Rails, although, like other languages, you have several frameworks for you).

Like everyone else, client-side considerations are clearer - if you don't want to try a “server-side code generator on the client”, for example gwt (I was told that the latter works well, but I personally always fear code generators, for example, using a code generator without understanding the "code" that it does for you, that in this case it is HTML, CSS and Javascript with its own structure). With the exception of GWT and similar approaches (if this is your chosen poison), really learning HTML, CSS and Javascript is really a must - and then again you can choose from many, many frameworks (jQuery, Dojo, closure , etc., etc.) d.).

For performance problems, you really want to study the site (and books, etc.) Steve Souders - Steve was the server guru until the measurement showed him that the bottleneck was really on the client side and then it turned into a wizard on the client side ;-). But to get the most out of books, you need an understanding of HTTP, HTML, etc. Etc., To start with :-).

+1
source share

Hit per day is not a very useful indicator for measuring performance. You really need to deal with peak loads and acceptable response times.

80-100 thousand hits per day is an average of about 1 hit per second. The hits will not be evenly distributed, so for normal traffic you can expect a maximum load of 10 beats per second.

If you intend to advertise your site using newsletters or commercials, expect that you will reach 100 hits per second.

If you sell airline tickets for $ 1, expect a maximum of 1,000 views per second.

Now the language you choose for the site is not as important as your choice of database (not necessarily relational) and the way you store data in the database.

Scaling interfaces is relatively easy, so having really fast, efficient HTML generation should not be a major concern. Choose a platform that will be effective for development time.

+1
source share

I expect this issue to be closed as subjective. But, I will put my 2 cents.

JSP is probably in good agreement with J2EE. (I heard that it can be a little tough, but I have no experience to give an idea about this.)

PHP is a good candidate because it is popular. You can find a lot of information on the Internet.

Python is not so popular for webdev, so finding examples is not so simple.

I also adhere to the opinion of Dave Markle. If you want to learn webdev, HTML, CSS, and JavaScript are also important. You may never want to be a third-party developer, but at some point you will not be able to cope with these technologies.

0
source share

There are many options.

  • Since you already know (and learn) Java, one option is to use GWT for the server and client. This can help you in that you do not need to learn another language (JS / HTML / Python / PHP, etc.). If your portal is large, using Java can help you better organize your application - usually JS / HTML-based applications are not very well organized, even if you use good JS libraries like jQuery or YUI. Having a good organization can help a lot - during the upgrade and modification later.

  • If your planned enterprise is an enterprise with one or two persons, or if it is limited in time - when the time to market is all - then I would not suggest an earlier approach, especially if your server side should be large.

    Java is a slow language for writing code. A project that you take, say, after 6 months to write in Python, brings you closer to 1 year + in Java. In such a scneario, I would prefer Python - it is the right language - unlike PHP, and you also create code with a good organization, albeit a little less organized than using Java.

    Please note that if your client-side code is much more complicated than your server-side code, then switching from GWT will not do you any harm. But if your server side code is very complex compared to the client side, I would suggest Python.

  • Another point is to use existing web structures to make your work easier. For Python, Django is a great choice. This in itself will reduce your working time by 50% or more, making your code much more secure and scalable.

0
source share

It really doesn't look like C ++, but I would recommend PHP. You really cannot expect the server-side scripting language to look like a compiled language such as C ++. Personally, I think PHP is an ugly, dirty language, but as soon as you enter it, it is very useful. Other languages ​​have too many flaws. ASP.Net is too focused on Microsoft, Python and Ruby on Rails are too obscure, as well as not curly bracket languages, which means that a lot of adjustment will be required to change them. Hope this helps.

0
source share

All Articles