Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the easiest/most effective way to learn Delphi?

Tags:

delphi

I am totally new to programming and I have chosen Delphi as the programming language that I would like to learn.

I basically want to build tools that will fill and submit web forms using sockets and I want them to be multi threaded as well.

I would love for them to be feature rich and perform correctly.

I am in no real rush to do this as I do understand that it takes time to become efficient at anything (especially programming). However, I do want to take the shortest path that I can in learning.

If it were possible I would love to go to school to learn the language but it seems like there are no schools in the US that teach it.

I have found quite a good bit of information on the internet that has helped me gain a basic knowledge of how things work inside the IDE and how to build basic apps but I want to be able to build really good apps that these tutorial do not teach me how to do.

So.. My question is how do I go about becoming an expert Delphi programmer without having any "Real Teacher" to guide me? How did you guys learn?

Would learning another programming language with the help of a teacher and them coming back to delphi make sense?

like image 537
Gary Becks Avatar asked Nov 29 '10 15:11

Gary Becks


People also ask

Is Delphi easy to learn?

Delphi is known as a very easy language to learn and use. Developers new to Delphi also have access to extensive free learning resources, including free courses and content on LearnDelphi.org, and on the Embarcadero Channel on YouTube.

How can I learn Delphi?

Head over to the Embarcadero YouTube channel and start learning Delphi for free.

Is Delphi worth learning?

Yes, it is. If only because learning Object Pascal will make you a better programmer overal. Delphi (Object Pascal) is basically C++ but as a clear and structured language. It is more powerful than C# and Java, and incomparable to scripting languages like Javascript, Typescript or Python.

What language does Delphi use?

Delphi uses the Pascal-based programming language Object Pascal created by Anders Hejlsberg for Borland (now IDERA) as the successor to Turbo Pascal. It supports native cross-compilation to many platforms including Windows, Linux, iOS and Android.


2 Answers

Former Delphi Product manager Nick Hodges created 30 video demos targeted to those new to Delphi and the object-pascal language. UPDATE 2017: That link is dead, videos can now be accessed thanks to archive.org here.

The videos take the viewer through the basics of the IDE, the language, and each demo mostly builds on the previous one in order to ultimately create a not too shabby GUI text editor.

If you are new to Delphi, this is a great place to start with the language and I’d highly recommend investing the time and watching the videos. I’ve seen them all and it helped me quite a bit.

The video demos use Delphi 2006, but these demos are entirely valid on any newer (and probably the older Delphi releases) version as well. Here are the topics covered in the videos:

NOTE: If the videos are no longer accessible on the originally hosted page, you can still obtain them from archive.org: https://web.archive.org/web/20130630143102/http://blogs.embarcadero.com/nickhodges/2006/08/15/26687

Download the ZIP file for each topic, which contains the video for that topic.

  • 1 – Intro to the IDE
  • 2 – Hello World
  • 3 – Basic Application Development
  • 4 – Language Introduction
  • 5 – More Lanugage Intro
  • 6 – Basic String Manipulation
  • 7 – Basic Datatypes
  • 8 – Sets
  • 9 – Arrays
  • 10 – Records
  • 11 – Basic Data
  • 12 – Simple Class
  • 13 – Procedure and Functions
  • 14 – Units
  • 15 – Inheritance
  • 16 – Polymorphism
  • 17 – Why OOP
  • 18 – Properties
  • 19 – Member Visibility
  • 20 – Constructors and Destructors
  • 21 – TurboPad: About Box
  • 22 – TurboPad: File Open
  • 23 – TurboPad: File Menu
  • 24 – TurboPad: Saving
  • 25 – TurboPad: Edit Menu
  • 26 – TurboPad: Toolbar
  • 27 – TurboPad: Word Wrap and Fonts
  • 28 – Live Templates
  • 29 – Refactorings
  • 30 – Debugger

And once you get through the videos, head over to the Delphi Basics website and bookmark it. Seriously, I still use this website about 10 times a day for reference on Delphi.

I'd also recommend reading delphi.about.com's "A Beginner's Guide to Delphi Programming", which is a nice primer to Delphi programming.

Also, IMO, for the most important (and best) resource for learning Win32 API is Mark Russinovich's Windows Operating Systems Internals Curriculum which is offered for free.

It is designed to be used by an instructor to teach students. I went through it and it is awesome. Full of examples, history, and detailed explanations. In my opinion, this is an ideal way to learn the Windows API.

like image 168
Mick Avatar answered Sep 25 '22 07:09

Mick


Just program whatever seems fun, solve problems as they arise and eventually you'll be an expert.

There are three tips to remember.

  1. If you encounter a problem too big to swallow in one gulp, split it into smaller problems and solve those one by one.

  2. When in doubt, always choose the simplest solution, then upgrade as needed.

  3. Google knows everything. If you're unsure what to look for, read the theory until you know that.

For instance, you say that you

want to build tools that will fill and submit web forms using sockets and I want them to be multi threaded as well.

Split this into smaller problems. You don't need multi-threading from the start, so set it aside. Your initial task is just to learn how to submit forms at all.

How to do that? Google around, read Wikipedia articles on HTTP and everything related until you know the basics. You don't have to understand peculiar details yet, only to get general concepts of what components are there and how are they related.

Then choose the simplest solution. You don't want to use sockets from the start. If there are ready components for sending HTTP requests, you should use them until you know how to do the same thing manually.

like image 21
himself Avatar answered Sep 26 '22 07:09

himself