Skip to content

Commit b3a25a8

Browse files
authored
Addressing base information sections (#96)
Changes --- The following provides the intial brief describtion for each parent seciton for: - IDE - Language - Framework - Engine - Concepts - Version Controls The brief describtion for each sections is the following: - Talk about it, - What is it - Use - History - Note about brief history Addition --- The following addresses empty pages and removes construction signs from the Main topics mentioned #90 As an example on the articles ![image](https://github.com/VerzatileDevOrg/Programming_HandBook/assets/47317248/d0c524dc-f14c-42b0-bbda-72eb4c175985)
2 parents e220eed + b8f6aec commit b3a25a8

File tree

14 files changed

+303
-20
lines changed

14 files changed

+303
-20
lines changed
File renamed without changes.

docs/Concepts/Concepts.md

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,50 @@ has_children: true
88
{{ page.title }}
99
======================
1010

11-
{% include under_construction.html %}
11+
Programming concepts are fundamental ideas and principles that underpin the design, development, and maintenance of software systems. They provide a framework for structuring code, organizing functionalities, and ensuring the scalability and maintainability of software projects. These concepts serve as guiding principles for developers, helping them write efficient, readable, and adaptable code.
1212

1313

14-
<br>
14+
## What is it?
1515

16-
<br>
16+
One aspect of programming concepts is abstraction, which involves simplifying complex systems by focusing on essential details while hiding unnecessary complexities. Abstraction allows developers to create reusable components, making code more modular and easier to maintain.
17+
18+
A crucial programming concept is encapsulation, involves bundling data and methods that operate on that data into a single unit, known as a class. Encapsulation helps to hide the internal implementation details of a class, promoting information hiding and reducing the complexity of code.
19+
20+
## Use
21+
22+
Programming concepts are utilized extensively in software development processes across various domains, including web development, mobile app development, game development, etc. They enable developers to write code that is modular, reusable, and easy to understand, facilitating collaboration among team members and enhancing the overall quality of software products.
23+
24+
## History
25+
26+
1. The Foundation of Theoretical Computer Science (1930s)
27+
28+
- Alan Turing's seminal work establishes theoretical computer science.
29+
- Concepts of algorithms and the universal computing machine are introduced, laying the groundwork for modern computing.
30+
2. The Dawn of High-Level Languages (1940s - 1950s)
31+
32+
- Grace Hopper pioneers the development of the first compiler for a programming language.
33+
- Machine-independent programming languages begin to emerge, paving the way for modern software development methodologies.
34+
3.The Era of High-Level Languages (1950s - 1960s)
35+
36+
- High-level programming languages like FORTRAN, COBOL, and Lisp come into prominence.
37+
- Concepts of structured programming are introduced, emphasizing readability and maintainability through control structures like loops and conditionals.
38+
4. The Birth of Object-Oriented Programming (OOP) (1960s - 1970s)
39+
40+
- Simula, developed in the 1960s, lays the foundation for object-oriented programming.
41+
- Smalltalk, created in the 1970s, popularizes the concepts of classes and objects, revolutionizing software development methodologies.
42+
5. The Rise of Object-Oriented Paradigm (1970s - 1980s)
43+
44+
- Object-oriented programming (OOP) gains widespread adoption, organizing code around objects and their interactions.
45+
- The concept of inheritance and polymorphism becomes integral to software design, facilitating code reuse and extensibility.
46+
6. Design Patterns (1990s)
47+
48+
- The Gang of Four (Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides) publishes "Design Patterns: Elements of Reusable Object-Oriented Software" in 1994.
49+
- 23 design patterns are cataloged, providing reusable solutions to common software design problems and becoming essential tools for developers.
50+
7. Evolution and Innovation (2000s - Present)
51+
52+
- The evolution of programming concepts continues, driven by emerging technologies such as artificial intelligence, cloud computing, and blockchain.
53+
- Concepts like microservices architecture, containerization, and domain-driven design shape the way software is developed and deployed in the modern era.
54+
55+
{: .note}
56+
This is only the brief history of concepts make sure to further research the foundation of Computer Science, which is the core of what we all know today. <br><br>
57+
Additionally as the concepts go into detail about these concepts, find more about them under Table of Contents.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

docs/Engine/Engine.md

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,45 @@ nav_order: 4
55
has_children: true
66
---
77

8-
{{ page.title }}
8+
Video Game {{ page.title }}
99
======================
1010

11-
{% include under_construction.html %}
11+
A video game engine is a software framework used by developers, designers and artists to make video games or movie production. It provides the necessary tools and functionalities to design, develop and eventually deploy these projects to various existing platforms. As its core, a game engine offers a suit of feature pipelines such as rendering engines for 2D and 3D graphics, physicss engines to simulate movement and interactions, sound and animations. Each engine has its specific purpose and use case based on the projects requirements, and by that used by different extent of industries not only tied to movies and video games, but even concept work.
1212

1313

14-
<br>
14+
## Use of Engines
1515

16-
<br>
16+
As the advancement of modern video game engines, it introduces a wide range of possibilities for video game design, movie makers and environmental designers who use these to showcase their work in the best format depending on the engine and to publish them to the wider audience.
17+
18+
1. Video Game Development
19+
20+
- Commonly these engines are developed for a specific reason to mainstream 2D / 3D games or both.
21+
- Some of the common engines that are widely used are Unity built for 2D games, and Unreal Engine built for 3D games, though both of them support the pipelines for 2D and 3D.
22+
- Provides a possibility to develop for various platforms like Mobile, Computer, Console, HTML.
23+
2. Prototyping
24+
25+
- These engines are also used by developers to prototype ideas to test game machanics, introduce concepts for movies or even to showcase environments and projects.
26+
3. Cross-Platform Development
27+
28+
- Many modern engines support multi-platform deployment, allowing games to be released on PCs, consoles, and mobile devices with minimal additional effort.
29+
4. Simulation and Training
30+
31+
- Game engines are employed in industries like military, healthcare, and education for creating realistic simulations and training programs.
32+
5. Virtual Reality (VR) and Augmented Reality (AR):
33+
34+
- Game engines are also used to develop immersive VR and AR experiences, broadening the scope of interactive applications beyond traditional gaming.
35+
- As an example simulating a planes cockpit to teach the consumer the expectations and make it available for them before learning in an actual one.
36+
37+
## History
38+
39+
The history of video game engines is deeply intertwined with the evolution of video games, tracing back to the mid-20th century. Early experiments like "Tennis for Two" (1958) and "Spacewar!" (1962) were groundbreaking but were hard-coded for specific hardware, making them inflexible and difficult to adapt.
40+
41+
As the video game industry emerged in the late 1970s and early 1980s with arcade classics like "Pong" (1972) and "Space Invaders" (1978), developers recognized the need for reusable software components. This led to the early development of game engines, with games like "Elite" (1984) featuring a basic 3D graphics engine.
42+
43+
A significant breakthrough came with id Software's "Wolfenstein 3D" (1992), which introduced the concept of separating game code from engine code. This approach was further refined with "Doom" (1993), whose engine was licensed to other developers, establishing a commercial model for game engines.
44+
45+
The mid-1990s saw the advent of more sophisticated engines like the "Quake" engine, which enabled true 3D environments and supported extensive modding. By the early 2000s, engines such as Unreal Engine and Unity provided comprehensive toolsets and multi-platform support, making game development more efficient and accessible.
46+
47+
{: .note}
48+
This is the brief history of games and the start of engines, remember this is a brief explanation its best to further research in regards to "Spacewar!", and "Wolfenstein 3D", which set the groundwork for the engines we know today as well as video games.<br><br><br>
49+
Please Read about the available engines on the website from Table of Contents.

0 commit comments

Comments
 (0)