Inhoud Hardware................................................................................................................................................ 2 Processoren........................................................................................................................................ 2 Geheugen........................................................................................................................................... 2 Harddisk.............................................................................................................................................. 3 Software................................................................................................................................................. 4 Softwarelicenties................................................................................................................................ 4 Operating Systems.............................................................................................................................. 7 Posix............................................................................................................................................... 7 Real-time besturingssystemen........................................................................................................ 7 Niet real-time operating systems.................................................................................................... 8 Cloud Operating Systems................................................................................................................ 8 Virtualisation on Virtual Machines..................................................................................................... 9 Beveiliging........................................................................................................................................ 11 Anti-Virus...................................................................................................................................... 11 Firewall......................................................................................................................................... 11 Internet Security (= Firewall + Anti-virus ).................................................................................... 11 Data.................................................................................................................................................. 12 Databases..................................................................................................................................... 12 Code / Programmeren...................................................................................................................... 15 Programmeerparadigma’s............................................................................................................ 15 Programmeertaalcategorieëen..................................................................................................... 15 Startpunt embedded programming Linux..................................................................................... 16 Software Versie controle systemen:.............................................................................................. 17 Programmeertalen........................................................................................................................ 19 Gecompileerde talen.................................................................................................................... 21 Libraries........................................................................................................................................ 22 Programmeertaalconcepten (Semafoor, matrix vermenigvuldiging,…)......................................... 24 Softwarebegrippen....................................................................................................................... 24 Software ontwikkelmethodes en technieken................................................................................ 24 Andere kennis............................................................................................................................... 25 Enkele begrippen van DDE tot ActiveX.......................................................................................... 26 Compiler....................................................................................................................................... 29 ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 1 Parsergenerators (hiermee kan je je eigen compiler(s) schrijven)................................................ 30 Integrated Development Environments........................................................................................ 32 Frameworks:................................................................................................................................. 34 Webprogrammeertalen................................................................................................................ 35 Server software............................................................................................................................. 39 Content Management Systemen.................................................................................................. 41 Hardware Systemen: AS/400, laptop, notebook, notepad, PowerPC, MAC, PC, TowerPC, Server PC, iPad, iPhone, Xbox,... Processoren RISC: Reduced instruction set computer CISC: Complex instruction set computer CPU: Central processing Unit GPU: Graphics Processing Unit Geheugen ROM= Read Only Memory In BIOS=Basic Input Output System van een computer RAM=Random Access Memory DRAM=Dynamic RAM=> refresh met clock nodig SRAM=Static RAM = verbruiken niks behalve bij edge verandering van 0 naar 1 of 1 naar 0, kost duur, vandaar werd cache memory in het level geroepen Harddisk SCSI P-ATA: Parallel ATA (IDE-kabel) S-ATA: Serial ATA (SATA I, II of III) SSD= Solid State Disk (Ramlike harddisk) SLC/MLC ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 3 Software Softwarelicenties http://nl.wikipedia.org/wiki/Lijst_van_softwarelicenties SPL http://nl.wikipedia.org/wiki/Sun_Public_License Tools & utilities: Beste site voor gratis en degelijke software: http://sourceforge.net/ Piriform http://www.piriform.com/products CPU-Z http://www.cpuid.com/softwares/cpu-z.html VOIP software http://en.wikipedia.org/wiki/Comparison_of_VoIP_software Skype http://www.Skype.com DVDProfiler http://www.invelos.com/Downloads.aspx Open Office http://www.openoffice.org/download/ (Export to PDF for your Curriculum Vitae) Password Safe Manager (For all your accounts, websites and passwords) http://passwordsafe.sourceforge.net/ (Use the version NOT using the registry!!! So you don't loose when pc crashes and you can save it to USB stick and port it to another PC) Teken- en conversieprogramma: http://www.gimp.org/ Bestanden en mappen vergelijken programma (en samenvoegen!) http://winmerge.org/ Compressie/decompressie: WinZIP http://www.winzip.com/win/en/index.htm Bestanden comprimeren en decomprimeren (zip, TAR, gz,...): http://www.7-zip.org/ Uploaden naar je eigen website met FTP: https://filezilla-project.org/ ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 5 Operating Systems http://en.wikipedia.org/wiki/Operating_system Posix Portable Operating Systems Interface=Reeks standaarden gedefinieerd door IEEE om compatibiliteit tussen verschillende OS te bewaren en de verschillen te beperken http://en.wikipedia.org/wiki/POSIX Real-time besturingssystemen (Geven garantie dat iets binnen bepaalde tijd wordt uitgevoerd) http://nl.wikipedia.org/wiki/Realtimebesturingssysteem VxWorks http://www.windriver.com/products/vxworks/ RTEMS=The Real-Time Executive for Multiprocessor Systems or RTEMS is an open source fully featured Real Time Operating System or RTOS http://rtems.org/ ECOS (used for embedded Linux as well) http://ecos.sourceware.org/ Tiny OS http://www.tinyos.net/ Win32 http://www.on-time.com/ Niet real-time operating systems Linux http://www.linux.org/ User Space Kernel Space Embedded Linux programmatie: http://www.minix3.org/ Cloud Operating Systems Sun Solaris http://www.oracle.com/us/products/serversstorage/solaris/solaris11/overview/index.html Windows = MS Windows platform • Windows Phone • Windows 8 OS X (MAC) FreeBSD= Free Berkeley Software Distribution (Zeer stabiel voor Hotmail servers gebruikt vroeger) http://www.freebsd.org/nl/ Android http://www.android.com/ Source http://source.android.com/ iOS http://nl.wikipedia.org/wiki/IOS_(Apple) Virtualisation on Virtual Machines VMWare http://www.vmware.com/be/nl/virtualization.html Virtual PC http://nl.wikipedia.org/wiki/Microsoft_Virtual_PC Bochs (Open Source) http://bochs.sourceforge.net/ Oracle VirtualBox (Gratis) https://www.virtualbox.org/ Emulatoren: http://www.dosbox.com/ (MS Dos spelletjes onder Windows en Linux ed) BusyBox, The Swiss Army Knife of Embedded Linux http://www.busybox.net/ ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 7 Beveiliging Anti-Virus http://www.avast.com/nl-be/index http://www.avg.com/nl-nl/free-antivirus-download Firewall http://www.comodo.com/home/internet-security/firewall.php Barracuda https://www.barracuda.com/ Internet Security (= Firewall + Anti-virus ) http://www.comodo.com/home/internet-security/free-internet-security.php (Wel daarna die GeekBuddy en ook hun Comodo Dragon browser deïnstalleren) Data XML= eXtensible Markup Language http://www.w3.org/XML/ CSV= comma separated values Databases Most widely used SQL Database Engine http://www.sqlite.org/ Olap Cubes http://nl.wikipedia.org/wiki/Cube_(informatica) Databasemanagementsysteem https://nl.wikipedia.org/wiki/Databasemanagementsysteem MS SQL Server 2008 R2 MS SQL Server 2012 Express Edition (Gratis editie) http://www.microsoft.com/en-us/download/details.aspx?id=29062 MySQL http://www.mysql.com/ Oracle RDBMDS Intermediate access naar database via ODBC en JDBC CRUD: Create, Read, Update, Delete https://nl.wikipedia.org/wiki/CRUD Database normalisatie: https://nl.wikipedia.org/wiki/Databasenormalisatie ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 9 Normaalvormen Code / Programmeren Programmeerparadigma’s http://nl.wikipedia.org/wiki/Programmeerparadigma Programmeertaalcategorieëen http://nl.wikipedia.org/wiki/Categorie:Programmeertaal SDLC= Software Development Life-Cycle!!! Kennen als programmeur! OOA/D: Object Oriented Analysis & Design http://en.wikipedia.org/wiki/Object-oriented_analysis_and_design UML: Unified Modeling Language http://nl.wikipedia.org/wiki/Unified_Modeling_Language RUP: Rational Unified Process http://nl.wikipedia.org/wiki/Rational_Unified_Process BPM: Business Process Model http://nl.wikipedia.org/wiki/Business_Process_Modeling BPMN: Business Process Model & Notation http://sourceforge.net/projects/bpmn/ Startpunt embedded programming Linux http://www.openembedded.org ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 11 Software Versie controle systemen: SCM= Source Control Management Systems Subversion SVN http://subversion.apache.org/ Tortoise SVN http://tortoisesvn.net/ Git http://www.git-scm.com/ https://github.com/ CVS Concurrent Versions System http://www.nongnu.org/cvs/ MS Visual Source Safe http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe IBM 's Rational ClearCase http://www-03.ibm.com/software/products/us/en/clearcase/ MS Team Foundation Server http://en.wikipedia.org/wiki/Team_Foundation_Server Niet te verwarren met MS Visual Studio Team System = MS Visual Studio Application Lifecycle Management Programmeertalen Lijst van programmeertalen http://nl.wikipedia.org/wiki/Lijst_van_programmeertalen Geïnterpreteerde talen VBA=Visual Basic For Applications: http://nl.wikipedia.org/wiki/Visual_Basic_for_Applications Scripttalen Powershell http://technet.microsoft.com/nl-nl/scriptcenter/powershell(en-us).aspx Python http://python.org/ Perl http://www.perl.org/ Ruby On Rails (is a framework for web) http://www.ruby-lang.org/en/ Platform onafhankelijk en al dan niet gecompileerde programmeertaal: Java Java Development Kit: http://www.oracle.com/technetwork/java/javase/downloads/index.html Java Runtime Environment: http://www.java.com/nl/download/ Javascript https://developer.mozilla.org/en-US/docs/Web/JavaScript?redirectlocale=enUS&redirectslug=JavaScript Javascript libraries http://modernizr.com/ ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 13 JQuery http://jquery.com/ Gecompileerde talen C C++ C# VB6 C++.net C#.net VB.net=Visual Basic.net Asp.net Objective C=Superset van C beïnvloed door Smalltalk: http://nl.wikipedia.org/wiki/Objective-C Objective C: Beginners Guide http://www.otierney.net/objective-c.html.en Libraries C++ libraries Lijst met C++ template libraries http://en.wikipedia.org/wiki/List_of_C%2B%2B_template_libraries Boost C++ libraries: http://www.boost.org/ Windows template library http://en.wikipedia.org/wiki/List_of_C%2B%2B_template_libraries 3D programmatie Open Graphical Language (3D CAD) http://www.opengl.org/ Glew http://glew.sourceforge.net/ Programmeertaalconcepten (Semafoor, matrix vermenigvuldiging,…) Softwarebegrippen “from scratch”… (van nul iets kunnen ontwerpen) OO of O&O: Onderzoek & ontwikkeling Maar: OO programmatie= OOP OOP: Object oriented programming Volatile/non-volatile Interfaces versus classes Software ontwikkelmethodes en technieken Real-time FSM: Finite State Machine Waterfall Model RAD (Rapid Application Development) http://nl.wikipedia.org/wiki/Rapid_application_development UML (Unified Modeling Language) RUP (Rational Unified Process) Agile development (Scrum) Continuous integration, Jenkins http://en.wikipedia.org/wiki/Jenkins_(software) http://jenkins-ci.org/ TDD ( Test Driven Development ) CMM (Capability Maturity Model) Design patterns = Terugkerende software ontwerppatronen GoF design patterns enterprise application architecture patterns enterprise integration patterns dependency injection (loose coupling / high cohesion) Andere kennis Sterke multithreaded programming skills Telecom domeinkennis : Internet protocol: TCP/IP Wifi ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 15 VOIP TTCN-3 DVB-S/T/C streaming:mpeg-2/4 Netwerk security Netwerking encryptie Codecs Device drivers Screen savers Enkele begrippen van DDE tot ActiveX DDE=Dynamic Data Exchange OLE=Object Linking & Embedding: http://nl.wikipedia.org/wiki/Object_Linking_and_Embedding ActiveX(=OLE 2.0, including COM): http://nl.wikipedia.org/wiki/ActiveX COM=Component Object Model http://nl.wikipedia.org/wiki/Component_Object_Model DCOM: Distributed COM http://nl.wikipedia.org/wiki/Distributed_component_object_model Cobra (Java)Beans: http://nl.wikipedia.org/wiki/JavaBeans Microsoft Silverlight (Tegenhanger van Adobe Flash Player, gebruikt XAML) http://nl.wikipedia.org/wiki/Microsoft_Silverlight Moonlight (=Silverlight reverse engineered for Linux) http://nl.wikipedia.org/wiki/Moonlight_(software) Compiler http://en.wikipedia.org/wiki/Compiler Lijst met compilers http://en.wikipedia.org/wiki/List_of_compilers#C.2FC.2B.2B_compilers GNU Compiling Collection http://gcc.gnu.org/ The LLVM Compiler Infrastructure Project http://llvm.org/ Crosscompiler http://www.scratchbox.org/ Microcontroller lib C http://www.uclibc.org/ Microcontroller lib C++ http://cxx.uclibc.org/ WatCom http://www.openwatcom.org/index.php/Main_Page Parsergenerators (hiermee kan je je eigen compiler(s) schrijven) http://nl.wikipedia.org/wiki/Parsergenerator Single versus multi step parsers http://wiki.answers.com/Q/Difference_between_single_pass_compiler_and_multi_pas s_compiler Bison parser http://www.gnu.org/software/bison/ YACC=Yet Another Compiling Compiler YACC-manual http://dinosaur.compilertools.net/yacc/index.html LARL: Look-Ahead Left to right, Rightmost derivation parser http://en.wikipedia.org/wiki/LALR_parser ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 17 Integrated Development Environments Eclipse (Gebruikt Java RunTime Environment) http://www.eclipse.org/ (Plugin for Test Driven Development = JUnit) MS Visual Studio Express Editions (Gratis) http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-products Mono Development = Tegenhanger .net omgeving voor C# http://www.mono-project.com/Compatibility Microsoft Visual Studio.net 2003, 2005, 2008 (.NET 3.5), 2010 (.NET 4,0) Visual Studio 6.0 met MFC (zit ook nog steeds in .net) MFC: Microsoft Foundation Classes Enkele .NET begrippen Focus op zowel front-end als back-end alsook ervaring met combinatie .NET Kennis van het .Net framework 4.5 .NET DEVELOPER WPF/WCF/.NET 4.0 en .NET 4.5. .NET Architecture .JIT=Just in time compilation http://nl.wikipedia.org/wiki/Just_in_time_compilatie CLR=Common Library Runtime http://nl.wikipedia.org/wiki/Common_Language_Runtime WCF: Windows Communication Foundation WPF: Windows Presentation Foundation MVC 4: Model View Controller (=Design pattern) Frameworks: MF: .NET Microframework http://www.netmf.com/ Zend framework (PHP) http://framework.zend.com/ QT-framework (Nokia) http://qt.digia.com/ Entity Framework (Microsoft .NET, open framework) http://www.entityframeworktutorial.net/ Symfony 2: A PHP framework for web projects http://symfony.com/ CakePHP http://cakephp.org/ Webprogrammatie Spring Framework for Java http://spring.io/ The spring reference documentation http://docs.spring.io/spring/docs/1.1.5/spring-reference.pdf Web standards for internet development: http://www.w3.org/ Webprogrammeertalen HTML http://www.w3.org/html/ Learn html http://www.w3.org/community/webed/wiki/HTML HTML 5 http://www.w3.org/TR/html5/ HTML 5 testing your browser ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 19 http://html5test.com/ Validator for HTML, CSS,… http://validator.w3.org/ PHP 5 http://www.php.net/ http://be2.php.net/manual/en/langref.php TWIG: The flexible, fast and secure template engine for PHP http://twig.sensiolabs.org/ CSS http://nl.wikipedia.org/wiki/Cascading_Style_Sheets CSS2.1 http://www.w3.org/TR/CSS2/ CSS3 (Nog geen standard op dit moment) http://www.w3.org/TR/css3-positioning/ CSS validator http://jigsaw.w3.org/css-validator/ CSS gradient generator tool http://www.colorzilla.com/gradient-editor/ LESS http://en.wikipedia.org/wiki/LESS_(stylesheet_language) lesscss http://lesscss.org/ .less http://www.dotlesscss.org/ Simpless http://wearekiss.com/simpless Server software Webservers http://nl.wikipedia.org/wiki/Lijst_van_webservers Hiawata (fast & secure weserver) http://www.hiawatha-webserver.org/ Apache (runs on the http servers) http://httpd.apache.org/ AMP packages http://en.wikipedia.org/wiki/List_of_AMP_packages XAMPP http://www.apachefriends.org/en/xampp.html Voorbeeld: XAMPP 1.8.3 for Windows, including: Apache 2.4.4 MySQL 5.6.11 PHP 5.5.0 phpMyAdmin 4.0.4 FileZilla FTP Server 0.9.41 Tomcat 7.0.41 (with mod_proxy_ajp as connector) Strawberry Perl 5.16.3.1 Portable XAMPP Control Panel 3.2.1 (from hackattack142) Adding Python to XAMPP http://www.apachefriends.org/f/viewtopic.php?f=16&t=52868 ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 21 Content Management Systemen http://nl.wikipedia.org/wiki/Contentmanagementsysteem Free open source cms http://www.scriptol.com/cms/list.php Vergelijken CMS: http://www.cmsmatrix.org/ Drupal, Joomla, Wordpress. http://www.vaneldijk.nl/artikelen/joomla-vs-drupal-vs-wordpress Drupal https://drupal.org/ Joomla http://www.joomla.org/ CMF http://nl.wikipedia.org/wiki/Contentmanagementframework Magenta http://www.magentocommerce.com/ Opencart http://www.opencart.com/ Wordpress http://wordpress.org/ MediaWiki powers Wikipedia http://www.mediawiki.org/wiki/MediaWiki //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Je bezit een grondige kennis van, Spring, WSAD, JPA, JAX-WS, JAX-RS en MAVEN • Je bezit een gemiddelde kennis van Struts Wicket JSP/Servlet Tomcat JUnit/TestNG • Kennis van ESB, JEE, JBOSS AS Kennis van Progress OpenEdge is een pluspunt BI, PRINCE2, PMI en ITIL SAP/ERP/CRM MS Dynamics NAV IS-U Je bent niet gelimiteerd tot PHP-code, ook van Javascript en Ajax, SOAP, REST heb je een gedegen kennis. U heeft aantoonbare ervaring met Windows 2008/R2 & SQL Server 2008/R2 U heeft actuele kennis van Microsoft Windows, SQL en Hosting U beschikt over kennis van Storage (EMC) Simatic S7 WinCC of Wonderware PLC / HMI (SCADA) Java/J2EE You have knowledge of security pitfalls in online applications Profound knowledge of Web 2.0 technologies: XHTML/HTML/HTTP/CSS/Javascript/Ajax Knowledge of Service Oriented Architecture (SOA), Web Services (WS) and Resource Oriented Architecture (REST) Relational Databases (SQL), ORM (Object Relational Mapper) .net framework 3.5 & 4, .net mvc 3, c#, razor engine http://razorengine.codeplex.com/ , linq, entity framework, t4 SSQL 2012, reporting services, integration services SVN), Html5, javascript, css3, jquery, applicatie - ontwikkeling in Symfony 2 HTML 5, CSS javascript, MySQL, MSSQL Android/Java, Windows8/.NET, Flash/Flex Adobe Air, Flex, Je hebt kennis van .Net, C#, LINQ, WCF en webservices. Je hebt kennis van XML, kennis van XPATH, XSLT is een pluspunt. Je hebt Kennis van SQL en ervaring met de RDBMS systemen, SQL Server (2008/2012). Je bent vertrouwd met SOA, Software Architectuur, ESB, cloud computing … Kennis van MS BizTalk is een pluspunt. Kennis van IBM Websphere is een pluspunt ©20/09/2013-… Kenneth Vernelen (Edegem-Belgium) http://www.PerpetuumSymbiosis.net 23