Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>The term "basics" implies a short list, but to be an effective programmer you have to learn a LOT of concepts. Once you do learn them, though, you'll be able to apply many of the same concepts across languages. </p> <p>I've compiled a (long!) list of concepts that are important in several, if not most, programming languages. </p> <ul> <li><p>Language syntax </p> <ul> <li>Keywords</li> <li>Naming conventions</li> <li>Operators <ul> <li>Assignment</li> <li>Arithmetic</li> <li>String</li> <li>Other</li> </ul></li> <li>Literals</li> <li>Conditionals <ul> <li>If/else</li> <li>Switch/case</li> <li>What is considered true or false (0? Empty String? Null?)</li> </ul></li> <li>Looping constructs <ul> <li>for</li> <li>foreach/iteration</li> <li>while</li> <li>do-while</li> </ul></li> <li>Exception handling</li> <li>importing/including code from other files</li> </ul></li> <li><p>Type system</p> <ul> <li>Strong/weak</li> <li>Static/dynamic</li> </ul></li> <li><p>Memory management</p></li> <li><p>Scoping</p> <ul> <li>What scopes are available</li> <li>How overlapping scopes are handled</li> </ul></li> <li><p>Language constructs/program organization</p> <ul> <li>Variables</li> <li>Methods</li> <li>Functions</li> <li>Classes</li> <li>Closures</li> <li>Packages/Modules/Namespaces</li> </ul></li> <li><p>Data types and data structures</p> <ul> <li>Primitives</li> <li>Objects</li> <li>Arrays/Lists</li> <li>Maps/Hash/Associative Array</li> <li>Sets</li> <li>Enum</li> <li>Strings <ul> <li>String concatenation</li> <li>String comparison and equality</li> <li>Substring</li> <li>Replacement</li> <li>Mutability</li> <li>Syntax for creating literal strings</li> </ul></li> </ul></li> <li><p>Functions, Methods, Closures</p> <ul> <li>Method/function overloading</li> <li>Method/function overriding</li> <li>Parameter passing (pass-by-value/pass-by-reference</li> <li>Returning values (single return/multiple return)</li> </ul></li> <li><p>Language type (not mutually exclusive)</p> <ul> <li>Scripting</li> <li>Procedural</li> <li>Functional</li> <li>Object-oriented</li> </ul></li> <li><p>Object-oriented principles</p> <ul> <li>Inheritance</li> <li>Classical vs Prototypical</li> <li>Single, Multiple, or something else</li> <li>Classes</li> <li>Static variables/global variables</li> <li>access modifiers (private, public, protected)</li> </ul></li> <li><p>API (or how to do basic stuff)</p> <ul> <li>Basic I/O</li> <li>Print to Standard Out</li> <li>Read from Standard in</li> <li>File I/O <ul> <li>Read a file</li> <li>Write a file</li> <li>Check file attributes</li> </ul></li> <li>Use of regular expressions</li> <li>Referencing environment variables</li> <li>Executing system commands</li> <li>Threading model <ul> <li>Create threads</li> <li>Thread-safety</li> <li>Synchronization primitives</li> </ul></li> <li>Templating</li> </ul></li> </ul>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload