Artículos relacionados a FreeBASIC 1.10.1 Programming in 21 Days: A Hands-On...

FreeBASIC 1.10.1 Programming in 21 Days: A Hands-On Course in Types, Pointers, Objects, Operator Overloading, Files, and Threads - Tapa blanda

Libro 38 de 38: Learn Programming in 21 Days

Saqib, Mohammad

 
9798161541838: FreeBASIC 1.10.1 Programming in 21 Days: A Hands-On Course in Types, Pointers, Objects, Operator Overloading, Files, and Threads

Sinopsis

Twenty-one days. One compiler. One spreadsheet engine, built from nothing and measured.

FreeBASIC reads like the BASIC of a home computer and compiles like C. Its Integer follows the target, its records carry padding, its objects carry a hidden pointer, and its runtime takes one lock for every string operation, so habits from either side give wrong answers.

Day 1 installs fbc64 and compiles a first program. Day 5 writes the tokenizer of gridcalc, the spreadsheet engine the book grows. Day 16 parses formulas into trees, and Day 19 recalculates them on threads. Day 21 ships gridcalc as a command-line tool with exit codes and a test suite.

253 listings, each printed from the file that ran. 215 output blocks, each captured from a real run. 231 figures drawn for a black-and-white press. 99 engine tests pass under -exx. 168 quiz questions and exercises.

YOUR 21-DAY PATH

Day 1 - Installing FreeBASIC: a first program, the fbc64 compiler, warnings, dialects and -exx.
Day 2 - Variables, Data Types, and Constants: integer ranges, overflow, Const, Enum and conversions.
Day 3 - Operators and Control Flow: bitwise logic, short-circuit tests, Select Case and every loop.
Day 4 - Subs, Functions, and Parameters: ByVal and ByRef, defaults, overloading and recursion.
Day 5 - Strings and Text Processing: String, ZString, searching, comparing and a formula tokenizer.
Day 6 - Arrays, Fixed and Dynamic: ReDim, doubling, memory order and a growable grid.
Day 7 - Modules and the Preprocessor: headers, namespaces, macros and checks compiled away.
Day 8 - User-Defined Types and Unions: padding, OffsetOf, Field = 1 and the cell record.
Day 9 - Pointers and Dynamic Memory: Allocate, Reallocate, New, linked nodes and leak counting.
Day 10 - Member Procedures and Constructors: This, destructors, properties and the Sheet type.
Day 11 - Operator Overloading: Cast, Let, indexing, temporaries and a value type that carries errors.
Day 12 - Inheritance and Polymorphism: Virtual, Abstract, the cost of dispatch and expression trees.
Day 13 - Hash Tables from Scratch: hash functions, chaining, load factor and the cell map.
Day 14 - Generic Containers with Macros: pasted names, one list type per element type, measured.
Day 15 - Procedure Pointers and Sorting: qsort, merge sort, binary search and stable sorting.
Day 16 - Recursion and a Parser: the call stack, grammar rules and formulas turned into trees.
Day 17 - Error Handling and Runtime Checks: return codes, On Error, -exx costs and cycle detection.
Day 18 - Files: text, CSV and binary snapshots, damaged files and paths that do not exist.
Day 19 - Threads and Mutexes: lost updates, locks, the runtime's string lock and parallel recalculation.
Day 20 - Measuring and Optimizing: -O 3, data layout, virtual calls and formulas compiled to steps.
Day 21 - Shipping gridcalc: the command line, exit codes, a static library and release builds.

WHO IT IS FOR. Programmers who have written a program in any language and want FreeBASIC taught as a compiled, statically typed language. Students who want to see a parser, a hash table and a threaded engine built in full. Not needed: C, object-oriented programming or an IDE; a text editor and the free FreeBASIC 1.10.1 compiler are the whole toolchain.

Download book source code from: {GitHub}/{mohammadnsaqib}

377 pages, black and white.

"Sinopsis" puede pertenecer a otra edición de este libro.