Prep Hard Win Easy

Category: Documentatie (page 2 of 2)

Het STARRT model is een handige hulpmiddel om een reflectieverslag te maken.
In een gesprek volgens het STARRT model komen bijvoorbeeld de volgende vragen aan de orde:

  • Het STARRT stappenplan
    • Situatie
      • Beschrijf de situatie. Wat is er gebeurd?
      • Wie waren de betrokkenen?
      • Waar speelde het zich af?
      • Waarover ging het precies?
    • Taak
      • Wat was de taak ?
      • Wat was je rol? Wat was je functie?
      • Wat moest je doen ?
      • Wat werd er van je verwacht?
      • Wat was je doel? Wat waren je doelen?
      • Wat was je voornemen? Had je een plan?
    • Actie
      • Wat heb je werkelijk gedaan?
      • Hoe heb je het aangepakt?
      • Welke afwegingen hebben daarin op dat moment een rol gespeeld?
      • Wat dacht je? Wat voelde je? Wat zag je voor je?
      • Wat was precies jouw aandeel of inbreng?
    • Resultaat
      • Wat was het gevolg van jouw actie bij jezelf en wat was het gevolg bij andere betrokkenen?
      • Wat was het gevolg op de sfeer?
      • Wat was de invloed op het proces? Konden jullie nog goed verder werken?
      • Wat was de invloed van jouw aandeel (van je actie) op het resultaat dat je wilde bereiken.
    • Reflectie
      • Was het resultaat van je actie dat wat je er mee wilde bereiken?
      • Heb je er iets van geleerd ?
      • Kun je deze situatie en je handelen daarin koppelen aan een competentie uit het profiel van de beroepsbeoefenaar uit de opdracht? Als je dat kan, hoe scoorde je dan voor deze competentie?
    • Transfer
      • Zou deze situatie zich nogmaals kunnen voordoen?
      • Zou je dan iets anders willen doen dan je deze keer hebt gedaan? (Wat dan, hoe, waarom?) Of blijf je juist hetzelfde doen? (Wat dan, hoe, waarom?)
      • Zijn er situaties denkbaar waarin je wat je gedaan hebt weer zou kunnen toepassen of
      • juist niet weer zou willen doen?
      • Wat neem je jezelf voor, voor de volgende keer?

    Wanneer jouw ultieme app in jouw hoofd zit en je die eerste stap op weg naar het ‘maken’ wil zetten kan het zeer overweldigend zijn om van jouw verbeelding tot implementatie te raken. Onderstaande is een stap-voor-stap plan om te voorkomen dat je zaken mist tijdens het coden van jouw app.

    Ontwerp

    1. bestudeer aangeleverd materiaal/docuuuumentatie
    2. stel indien nodig vragen
    3. maken van de planning in trello en het kwaliteitshandboek
    4. ontwikkelomgeving opzetten
    5. creeer databasescript adhv TO
    6. vul de database met testgegevens
    7. rol de database uit
    8. quickwins en prio bepalen
    9. planning bijwerken/splitsen in trello
    10. basis wireframe maken
    11. beslissen welke conventies gebruikt worden
    12. scaffolding directory structuur inrichten

    Realisatie

    1. header en footer maken
    2. algemene styling bepalen
    3. core/router bouwen
    4. DataBase class bouwen indien nodig
    5. MVC methodes agile ontwikkelen:
      1. wireframe van functionaliteit maken
      2. documenteren: beschrijf functionaliteit testscenario in testplan
      3. controller: nieuwe method bouwen en naar model sturen
      4. model: DataBase class requiren of ingebouwde PDO class gebruiken
      5. model: nieuwe class bouwen indien nodig
      6. model: nieuwe class voorzien van __construct() en __destruct()
      7. model: nieuwe method bouwen
      8. model: db data fetchen en var_dump testen
      9. model: db data fetchen en return naar controller
      10. view: nieuwe view bouwen
      11. view: specifieke styling toepassen
      12. controller: db data geschikt maken voor view
      13. controller: include view in method
      14. testen: testscenario testen
      15. documenteren: testresultaat in testlog verwerken
      16. documenteren: kwaliteitshandboek bijwerken
      17. documenteren: code
      18. documenteren: trello planning bijwerken
      19. herhaal stappen a t/m s

    Implementatie

    Onderhoud – Beheer

    Voorbeeldplanning

    Ontwerp
    ===
    08:30 – 08:50 20 bestudeer aangeleverd materiaal/documentatie
    08:55 – 08:55 05 stel indien nodig vragen
    08:55 – 09:05 10 maken van de planning in trello
    09:05 – 09:20 15 ontwikkelomgeving opzetten
    09:20 – 10:05 45 creeer databasescript adhv TO
    10:05 – 10:10 05 rol de database uit
    10:10 – 10:20 10 vul de database met testgegevens
    10:20 – 10:35 15 quickwins en prio bepalen
    10:35 – 10:40 05 planning bijwerken/splitsen in trello
    10:40 – 10:50 07 wireframe maken
    10:50 – 11:00 10 scaffolding directory structuur inrichten
    Realisatie
    ===
    11:00 – 11:30 30 header en footer maken
    11:30 – 11:45 15 algemene styling bepalen
    11:45 – 12:15 30 pauze
    12:15 – 14:20 125 Eerste functionaliteit
    12:15 – 12:20 05 — wireframe
    12:20 – 12:25 05 00 documenteren: technische benodigdheden en conventies in TO
    12:25 – 12:40 15 00 controller: class en handleRequest of router maken
    12:40 – 12:45 05 — controller: handleRequest switch/case en verwijzing of route bepalen
    12:45 – 12:50 05 — controller: nieuwe method maken en naar model sturen
    12:50 – 12:55 05 — model: DataHandler requiren
    12:55 – 13:00 05 — model: nieuwe class maken indien nodig
    13:00 – 13:05 05 — model: nieuwe class voorzien van __construct() en __destruct()
    13:05 – 13:15 10 20 model: nieuwe method maken
    13:15 – 13:20 05 — model: db data fetchen en var_dump testen
    13:20 – 13:25 05 — view: nieuwe view maken
    13:25 – 13:40 15 10 view: styling toepassen
    13:40 – 13:45 05 — model: db data fetchen en ‘return‘ naar controller
    13:45 – 13:50 05 — controller: db data klaarzetten voor view
    13:50 – 13:55 05 — controller: include view in method
    13:55 – 14:00 05 — documenteren: code
    14:00 – 14:10 10 — testplan: functioneel en technische test uitvoeren
    14:10 – 14:15 05 — documenteren: testresultaat in testplan
    14:15 – 14:20 05 — documenteren: trello planning bijwerken

    Wanneer jouw ultieme game in jouw hoofd zit en je die eerste stap op weg naar het ‘maken’ wil zetten kan het zeer overweldigend zijn om van jouw verbeelding tot implementatie te raken. Onderstaande is een stap-voor-stap plan om te voorkomen dat je zaken mist tijdens het coden van jouw game.

    1. Pre Production Phase
      1. analyze brief
      2. research
      3. brainstorming
      4. determine game objectives
      5. determine game rules
      6. determine core gameplay1
      7. visualize colour schemes
      8. visualize concept art for all sprites/models
      9. create level/map mockups
      10. create high-concept doc
    2. Production Phase
      1. determine scale & proportion
      2. determine engine
      3. setup versioning repository
      4. setup directory structure
      5. code main loop
      6. code levels/maps basics
      7. code core gamemechanics2
      8. code player
      9. code physics(kinematics)
      10. code controls
      11. create primitive objects
      12. code objects attributes and behavior
      13. code collision detection
      14. create basic sound effects
      15. code blocking out
      16. apply basic sound effects
      17. apply scale/proportion
      18. create lo-res environmental 2D sprites/3D models
        • characters, objects, life forms, scenery, vegetation, walls, furniture, vehicles, lighting etc…
      19. animate lo-res environmental 2D sprites/3D models
      20. place/rig lo-res environmental 2D sprites/3D models
      21. code level/maps
      22. code game logic
      23. code gamemechanics2
      24. code enemies
      25. code ai
      26. create lo-res textures for all sprites/models
      27. apply lo-res textures on all sprites/models
      28. create lo-res visual effects
      29. apply lo-res visual effects
      30. create transitional visual effects
      31. apply transitional visual effects
      32. adding game features*
      33. code backend
      34. test core gameplay1
      35. alpha playtest
      36. refactor according to testreport
      37. alpha game demo
      38. create hi-res polished textures for all sprites/models
      39. apply hi-res polished textures on all sprites/models
      40. create ui/hud interface art
      41. apply ui/hud interface art
      42. create hi-res polished visual effects
      43. apply hi-res polished visual effects
      44. create final polished sound effects
      45. apply final polished sound effects
      46. create cinematics (cut scenes)
      47. apply cinematics
    3. Post Production Phase
      1. beta testing final
      2. redesign according to testreport
      3. beta game demo
      4. packaging design / packing code
      5. soft launch
      6. promotion
      7. hard launch
      8. maintenance

    1.) Gameplay
    Gameplay zijn alle acties die gedaan kunnen worden:

    • door de speler
    • door andere objecten als reactie op de acties van de speler
    • door andere objecten als zelfstandige acties

    2.) Gamemechanics
    Gamemechanics is de manier om Gameplay mogelijk te maken door een op regels gebaseerd interactief systeem die in staat is om:

    • acties te ontvangen
    • reacties te geven

    *TV Tropes(2015). Videogame Tropes. Geraadpleegd op 5 november 2015, van http://tvtropes.org/pmwiki/pmwiki.php/Main/VideogameTropes

    What is computer programming?

    How do you plan on programming a computer? Are you going to create a simple calculator? a document editing application? a multi-functional interactive game? something else? Whatever your plans, the road ahead is an interesting one. Computer programming is a challenging and rewarding discipline.

    Computer programming is defined as telling a computer what to do through a special set of instructions which are then interpreted by the computer to perform some task(s). These instructions can be specified in one or more programming languages including Java, C, and C++.

    A computer goes through a set of steps whose purpose is to achieve something. These steps are instructed to the computer by computer programs. Essentialy, computer programming is the process by which these programs are designed and implemented.

    There are many advantages to learning computer programming such as gaining new skills, being able to tell the computer what to do, and becoming better acquainted with computers. Whether you are a computer hobbyist, a student, an IT professional, or are just curious about the subject, learning how to program a computer will be highly beneficial.

    While computer programming can be a great tool used to achieve many things, there are a few misconceptions about it. Let’s clear them up!

    • You need to have some kind of special software to write programs

      It does help, but such software is not required, and for beginners it is better to work without it for the purpose of gaining experience.
    • To be a computer programmer, you must have vast technical knowledge

      While it is true that some computer programming languages are highly technical, most do not require you to have vast technical knowledge. So dont worry, you don’t have to be an expert to write code.

    With computer programming, you tell the computer what to do. The more you master the subject, the more power to you!

    Computer programming concepts

    The concepts discussed on this page are essential knowledge to anyone who wants to become skilled in computer programming. While some are not universal, these concepts are present in the majority of computer programming languages and/or are a fundamental part of the programming process.

    • Algorithm
      A set of steps for carrying out a specific task. Algorithms are used extensively in computer programming to arrive at a solution for a problem. The process of creating an algorithm involves documenting all the necessary steps needed to arrive at the solution and how to perform each step. A real world example of an algorithm would be a recipe. The instructions of a typical recipe (add ingredients, mix, stir, etc.) are an algorithm.
    • Source code
      The actual text used to write the instructions for a computer program. This text is then translated into something meaningful the computer can understand.
    • Compiler
      A software tool that translates source code into data that the computer can understand. Specifically, a compiler is used to turn source code into object code. The object code is then passed through a program called a linker which turns it into an executable program.
    • Data type
      The classification of pieces of information in a program. The amount of different data types varies between languages. Typically, there are data types for integers (whole numbers), floating-point numbers (numbers with a decimal part), and single characters. To distinguish between different data types, a computer uses special internal codes.
    • Variable
      A container which represents a value in a program. Variables can store different types of data including numeric values, single characters, and text strings. The value of a variable can change all throughout a program.
    • Constant
      The same thing as a variable with one major difference – the value of a constant does not change, while the value of a variable can change all throughout a program.
    • Conditional
      A set of code that will execute only if a cetain condition is true. Conditionals are used to test expressions and perform certain operations accordingly. For example, you could test a number input by the user and if it is too high print the message “The number entered is to high” and the program exits. Thanks to conditionals, a program can work differently every time it runs.
    • Array
      A special type of variable used in many programming and web languages including PHP, Javascript, and Java that contains a list of related values. For example, a colors array would contain a list of colors.
    • Loop
      A segment of code that executes repeatedly based on a certain condition. Loops are used to perform tasks repeatedly a certain amount of times. For example, if you needed to print the numbers 1 to 10. You can use a loop for this task instead of manually printing all the numbers.
    • Function
      A set of code used to carry out specific tasks. A function can take parameters which will effect its output as well as return values. Functions prevent unneccesary redundancy because you can use them as much as needed instead of retyping some code over and over. For example, if you need to multiply two numbers, instead of doing the calculation manually every time, you can supply the data to a function through some parameters which will do it for you.
    • Class
      A template for a real world object to be used in a program. For example, a programmer can create a car class which represents a car. This class can contain the properties of a car (color, model, year, etc.) and functions that specify what the car does (drive, reverse, stop, etc.). Classes are used in object-oriented programming.

    The different types of languages

    Not any computer programming language can do anything. There are limitations, and actually, different languages are used for different tasks.

    This lesson focuses on:

    • Web languages
    • Software languages
    • The different generations of languages
    • Procedure oriented programming
    • Object oriented programming

    Web languages

    Used for creating and editing pages on the web. Can do anything from putting plain text on a webpage, to accessing and retrieving data from a database. Vary greatly in terms of power and complexity.

    • HTML
      Hyper Text Markup Language. The core language of the world wide web that is used to define the structure and layout of web pages by using various tags and attributes. Although a fundamental language of the web, HTML is static – content created with it does not change. HTML is used to specify the content a webpage will contain, not how the page functions. Learn HTML at my HTML lessons section.
    • XML
      Extensible Markup Language. A language developed by the W3C which works like HTML, but unlike HTML, allows for custom tags that are defined by programmers. XML allows for the transmission of data between applications and organizations through the use of its custom tags.
    • Javascript
      A language developed by Netscape used to provide dynamic and interactive content on webpages. With Javascript it is possible to communicate with HTML, create animations, create calculators, validate forms, and more. Javascript is often confused with Java, but they are two different languages. Learn Javascript at my Javascript lessons section.
    • VBScript
      Visual Basic Scripting Edition. A language developed by Microsoft that works only in Microsoft’s Internet Explorer web browser and web browsers based on the Internet Explorer engine such as FlashPeak’s Slim Browser. VBScript Can be used to print dates, make calculations, interact with the user, and more. VBScript is based on Visual Basic, but it is much simpler. Learn VBScript at my VBScript lessons section.
    • PHP
      Hypertext Preprocessor (it’s a recursive acronym). A powerful language used for many tasks such as data encryption, database access, and form validation. PHP was originally created in 1994 By Rasmus Lerdorf. Learn PHP at my PHP lessons section.
    • Java
      A powerful and flexible language created by Sun MicroSystems that can be used to create applets (a program that is executed from within another program) that run inside webpages as well as software applications. Things you can do with Java include interacting with the user, creating graphical programs, reading from files, and more. Java is often confused with Javascript, but they are two different languages. Learn Java at my Java lessons section.

    Software languages

    Used for creating executable programs. Can create anything from simple console programs that print some text to the screen to entire operating systems. Vary greatly in terms of power and complexity.

    • C
      An advanced programming language used for software application development. Originally developed by Dennis Ritchie at Bell Labs in the 1970’s and designed to be a systems programming language but since then has proven itself to be able to be used for various software applications such as business programs, engineering programs, and even games. The UNIX operating system is written in C.
    • C++
      Descendant of the C language. The difference between the two languages is that C++ is object-oriented. C++ was developed by Bjarne Stroustrup at Bell Labs and is a very popular language for graphical applications.
    • Visual Basic
      A language developed by Microsoft based on the BASIC language . Visual Basic is used for creating Windows applications. The VBScript language (also developed by Microsoft) is based on Visual Basic.
    • Java
      A powerful and flexible language created by Sun MicroSystems that can be used to create applets (a program that is executed from within another program) that run inside webpages as well as software applications. Things you can do with Java include interacting with the user, creating graphical programs, reading from files, and more. Java is often confused with Javascript, but they are two different languages. Learn Java at my Java lessons section.

    The different generations of languages

    There are currently five generations of computer programming languages. In each generation, the languages syntax has become easier to understand and more human-readable.

    • First generation languages (abbreviated as 1GL)
      Represent the very early, primitive computer languages that consisted entirely of 1’s and 0’s – the actual language that the computer understands (machine language).
    • Second generation languages (2GL)
      Represent a step up from from the first generation languages. Allow for the use of symbolic names instead of just numbers. Second generation languages are known as assembly languages. Code written in an assembly language is converted into machine language (1GL).
    • Third generation languages (3GL)
      With the languages introduced by the third generation of computer programming, words and commands (instead of just symbols and numbers) were being used. These languages therefore, had syntax that was much easier to understand. Third generation languages are known as “high level languages” and include C, C++, Java, and Javascript, among others.
    • Fourth generation languages (4GL)
      The syntax used in 4GL is very close to human language, an improvement from the pervious generation of languages. 4GL languages are typically used to access databases and include SQL and ColdFusion, among others.
    • Fifth generation languages (5GL)
      Fifth generation languages are currently being used for neural networks. A nueral network is a form of artifical intelligence that attempts to imitate how the human mind works.

    Procedure-oriented programming

    A type of programming where a structured method of creating programs is used. With procedure-oriented programming, a problem is broken up into parts and each part is then broken up into further parts. All these parts are known as procedures . They are separate but work together when needed. A main program centrally controls them all.

    Some procedure-oriented languages are COBOL, FORTRAN, and C.

    Object oriented programming

    A type of programming where data types representing data structures are defined by the programmer as well as their properties and the things that can be done with them. With object-oriented programming, programmers can also create relationships between data structures and create new data types based on existing ones by having one data type inherit characteristics from another one.

    In object-oriented programming, data types defined by the programmer are called classes (templates for a real world object to be used in a program). For example, a programmer can create a data type that represents a car – a car class. This class can contain the properties of a car (color, model, year, etc.) and functions that specify what the car does (drive, reverse, stop, etc.)

    Some object-oriented languages are C++, Java, and PHP.

    Newerposts

    Copyright © 2025 Prep Hard Win Easy

    Theme by Jim DunkUp ↑