background preloader

General (Know them)

Facebook Twitter

Integrated development environment. An integrated development environment (IDE) or interactive development environment is a software application that provides comprehensive facilities to computer programmers for software development.

Integrated development environment

An IDE normally consists of a source code editor, build automation tools and a debugger. Most modern IDEs offer Intelligent code completion features. Overview[edit] One aim of the IDE is to reduce the configuration necessary to piece together multiple development utilities, instead providing the same set of capabilities as a cohesive unit. Reducing that setup time can increase developer productivity, in cases where learning to use the IDE is faster than manually integrating all of the individual tools. While most modern IDEs are graphical, text-based IDEs such as Turbo Pascal were in popular use before the widespread availability of windowing systems like Microsoft Windows and the X Window System (X11). Interpreter Vs Compiler : Difference Between Interpreter and Compiler. POSIX. POSIX (Portable Operating System Interface for Unix) στην πληροφορική καλείται το όνομα μιας σειράς πρότυπων που καθορίζουν τις βασικές υπηρεσίες που παρέχει ένα λειτουργικό σύστημα, και κυρίως το API των διαθέσιμων κλήσεων συστήματος.

POSIX

Δημιουργήθηκε με στόχο την εξασφάλιση της συμβατότητας μεταξύ των ποικίλλων λειτουργικών συστημάτων UNIX, έτσι ώστε τα προγράμματα που τρέχουν σε έναν υπολογιστή με UNIX να μπορούν να μεταγλωττιστούν σε οποιονδήποτε άλλον υπολογιστή με UNIX χωρίς να χρειάζεται να τροποποιηθεί ο πηγαίος κώδικας (ή μέρος αυτού). What is the difference between a compiler of java (JVM) and a compiler of C and C#? - Quora.

Bytecode. Since bytecode instructions are processed by software, they may be arbitrarily complex, but are nonetheless often akin to traditional hardware instructions; virtual stack machines are the most common, but virtual register machines have also been built.[1][2] Different parts may often be stored in separate files, similar to object modules, but dynamically loaded during execution.

Bytecode

Data structure alignment. For example, when the computer's word size is 4 bytes (a byte means 8 bits on most machines, but could be different on some systems), the data to be read should be at a memory address which is some multiple of 4.

Data structure alignment

When this is not the case, e.g. the data starts at address 14 instead of 16, then the computer has to read two or more 4 byte chunks and do some calculation before the requested data has been read, or it may generate an alignment fault. Even though the previous data structure end is at address 13, the next data structure should start at address 16. Two padding bytes are inserted between the two data structures at addresses 14 and 15 to align the next data structure at address 16. Hash function. A hash function that maps names to integers from 0 to 15.

Hash function

There is a collision between keys "John Smith" and "Sandra Dee". Uses[edit] Hash tables[edit] Thus, the hash function only hints at the record's location — it tells where one should start looking for it. Still, in a half-full table, a good hash function will typically narrow the search down to only one or two entries. Hash table. A small phone book as a hash table Hashing[edit] Main article: Hash function The idea of hashing is to distribute the entries (key/value pairs) across an array of buckets.

Hash table

Given a key, the algorithm computes an index that suggests where the entry can be found: index = f(key, array_size) Often this is done in two steps: Parsing. Within computational linguistics the term is used to refer to the formal analysis by a computer of a sentence or other string of words into its constituents, resulting in a parse tree showing their syntactic relation to each other, which may also contain semantic and other information.

Parsing

The term is also used in psycholinguistics when describing language comprehension. In this context, parsing refers to the way that human beings analyze a sentence or phrase (in spoken language or text) "in terms of grammatical constituents, identifying the parts of speech, syntactic relations, etc. "[2] This term is especially common when discussing what linguistic cues help speakers to interpret garden-path sentences. Human languages[edit] Traditional methods[edit] Parsing was formerly central to the teaching of grammar throughout the English-speaking world, and widely regarded as basic to the use and understanding of written language. Snippet (programming) Example of a code snippet.

Snippet (programming)

Text editors that include this feature ordinarily provide a mechanism to manage the catalogue, and separate "snippets" in the same manner that the text editor and operating system allow management of separate files. These basic management abilities include operations such as viewing, adding, editing, deleting, sorting, filtering, grouping, renaming, and storing snippets in a repository, catalogue, or database. Some editors provide a macro ability to snippets allowing function prototypes and variable control structures to be generated based on a standard template. Other applications such as Macromedia Dreamweaver make use of these code snippets as well for Web development. Just-in-time (JIT) compilers can "splice together" pre-compiled sections of code as longer object code/machine code segments. Snippets are similar to having static preprocessing included in the editor, and do not require support by a compiler.