Inhoud - Kenneth Vernelen

advertisement
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
Download