PHP Development - Many (New) Questions

I am an engineering student, and this semester I am attending a database and information systems class. I needed to create a website / application that uses a database using PHP / PGSQL. My questions:

  • which would you recommend an IDE?
  • Anyone have any good tips and advice for a new developer?
  • this would help me (a lot) to develop this project, which will study more "academic" aspects of the subject, such as the Entity / Association Model, etc. Are there any good tools to structure my work?

Thanks!

EDIT: few notes:

  • I forgot to ask the latter, I tried installing BitNami WAPP Stack. Does anyone know how good and / or reliable it is?
  • I actually work under Windows Vista Business (new laptop: S). Would you recommend develloping on Linux for any specific reason?
+4
source share
11 answers
  • which would you recommend an IDE?

Anything that supports remote debugging. You can save hours and hours and learn much faster if you can actually execute your code. It always amazes me that more people don’t use good debugging tools for PHP. The tools are there, not their use is crazy. FWIW I have always been committed to the Activestate Komodo - a fantastic product.

  • Anyone have any good tips and advice for a new developer?

    • get an infected test. He will be in a good position in the future and will make you think correctly about design issues. In fact, there are many advantages, but few disadvantages.

    • learn to refactor and make it part of your developmental rhythm.

    • related to this: think ahead, but don't program ahead. Keep in mind that something you write should probably bubble in the class hierarchy so that it is available in a more general way, but you don't need to make a bubble until you need it.

  • it would help me (a lot) to develop this project, which will participate in more "academic" aspects of the subject, such as the Entity / Association Model, etc. Are there any good tools to structure my work?

Learn about design patterns and apply the lessons you learned from them. Do not program the "PHP4" method.

  • I forgot to ask the latter, I tried installing BitNami WAPP Stack. Does anyone know how good and / or reliable it is?

I don’t know, but if you have the time, I would avoid a pre-created stack like WAMPP. It is important to understand how the shapes fit together. However, if you work on Windows, you may not have time, and your energy may be better focused on writing good code than on how to install PHP, PostgreSQL, and Apache.

  • I actually work under Windows Vista Business (new laptop: S). Would you recommend Linux development for any specific reason?

Yes, I would do that. Assuming you are deploying to Linux (if you are deploying to Windows, I ask myself some serious questions!), Then development in the same environment is incredibly useful. I switched for this reason in 2005, and it was one of the most useful things that I did in terms of development. However, if you are new to * nix beginners and are in difficult time constraints, perhaps stick to what you know. If you have time to try something, it will be easy for you to get up and work with a good modern Linux desktop distribution, and the development work will work together.

+10
source

This is probably the only time in your career when you have complete freedom to choose which tools to use, so use it in the best way. Explore some of the classic tools that go a long way with you.

So instead of using the IDE, which you are likely to do all your professional life, you will get a taste of using old school editors like vim / emacs. One of the advantages is that the IDE will not hide all the details about how your project will work, knowing that a full technology stack is always a plus.

For any technology that you will use, try and get a good broad perspective before you dive into the implementation details, so for PHP I would suggest getting an idea of ​​XHTML, CSS and Javascript, including libraries like jQuery; Relational object mapping (look at Ruby on Rails, CakePHP, Django, and SQL Alchemy) and Model View Controller Frameworks across platforms.

For PGSQL, in addition to normalizing, try to penetrate the depth of information and calculate transaction isolation levels and when they will be useful.

It is also important to understand how the HTTP protocol works at a low level and how highly scalable websites can be created using HTTP.

Instead of relying on tools, I would say that simply create a reading list on the topics mentioned above and which will automatically structure your thinking process to take these problems into account.

+10
source
  • IDE: I recommend PSPad for great FTP features and syntax highlighting for PHP
  • Tip. Go through the PHP documentation for mysql or any other database that you use, the PHP documentation is the best tool to learn.
  • Tip. Keep the data simple, you can always change it to something else, for example, store time using unixtimestamp, since php has excellent functionality with the date () function to turn it into anything.

EDIT for adding linux vs windows hints

  • I have developed both on Windows and Linux machines, and I have a PHP server on Linux and Windows, and for my type of development (CMS and websites on these CMS) I prefer to develop Windows and hosting on Linux. This is due to Linux resilience and tools that I can reliably use for Windows (mainly Photoshop).
+4
source

I would recommend a simple text editor rather than an IDE. You should use one with syntax highlighting like Notepad ++.

Tips:

  • Use firefox
  • Play with multiple test databases. The biggest mistake made in teaching or studying databases is to focus on theory without evidence.
+2
source

Good IDE for PHP PDT , Eclipse plugin.

+2
source

My recommendations:

  • No IDE - only the main text editor with syntax highlighting (I use jEdit)
  • Understanding XSS and SQL Deployment
  • There are many good frameworks in PHP that will help
+1
source

I recommend you netbeans . is free. it is available for all platforms, and basically it is good for editing php, jsp, java, css, html, ... Good for SVN, mercurial, plus you can easily integrate it with kenai.com ...

It helps with IntelliSense popup.

Believe me, I use it to develop php and its best suitable ideal I can find ...

+1
source
  • IDE: Quanta +
  • tip: do not use the template library over the template language (PHP)
  • tip: MVC is a design and mentality issue, not a library.
0
source

The best editors you see in windows are Notepad ++ and Eclipse. both are good, but they cannot hold the candle of Kate and Quantum +. just for that I would cut out the windows. In addition, it is nice to have both a development and a real test environment in the same system, and even if most OSSs are available in windows, they always represent a square snap to round holes.

0
source

ide: vim + (firefox + firebug) using ide with php is, for the most part, redundant

other tools: pgadmin3 design your tables so they are easy to query

If you have an additional box, I would put linux on it if you want to try it. Ubuntu is a good starter distribution with a simple LAMP configuration process. I would not do anything for this laptop, because it will allow you to test IE and firefox.

0
source
0
source

Source: https://habr.com/ru/post/1277352/


All Articles