Computer science B.U.T., second year, Application development track
Pass the second year of the computer science B.U.T. in application development, from code quality to web and mobile.
23 paths · 313 decks
Writing efficient code
Pick the data structure and the algorithm that hold as the data grows, and prove it by analysis, then by measurement.
Complexity
Data structures
Efficient sorts
Performance
Going further
From a need to a specification
Turn what a client asks for into requirements, use cases, stories and models that can be checked.
Requirements
Describing
Modelling
Deciding
Designing software that lasts
Structure software so that a change stays local: principles, patterns, architecture, teamwork on Git, services and data access.
Principles
Design patterns
Maintaining
Git in a team
Architecture
Services and data
Proving an application works
Build an application's test campaign, from the unit to the interface, measure what it covers and run it on every change.
Test levels
From the user's side
Measuring and automating
Building a web application
Build a complete web application, from the browser to the database, and close its classic security holes.
Client and server
Client side
Server side
Security
Going all the way on the web
Build a single-page application with a framework, then assess its usability, accessibility and speed.
JavaScript and framework
Quality of a web application
Building for the phone
Design a mobile app that respects the lifecycle, permissions, battery and offline use, all the way to publication.
Choosing and building
The phone's resources
Holding up and publishing
Programming close to the system
Write programs that create processes and threads, synchronise them and make them communicate.
The system
Processes
Synchronising
Communicating
Understanding how a network carries data
Read a capture byte by byte and predict a packet's path through routers, NAT and filters.
The protocols
Interconnection
Practice
Connecting an application to its database
Connect a program to its database safely, program logic inside it, stay correct when several users write at once and make a query fast..
From the code
Inside the database
Concurrency
Performance
Shaping data well, in tables or otherwise
Normalise a relational schema from its dependencies and tell when another database model fits better.
Keeping a secret
Encrypt, decrypt and break the classical ciphers by hand, run RSA and Diffie-Hellman on small numbers, and detect and correct a transmission error..
Arithmetic
Symmetric ciphers
Asymmetric ciphers
Codes
Going further
Running several machines inside one
Create virtual machines and containers, connect them and choose which of the two fits.
Virtualising a machine
Containerising an application
Designing the architecture
Making a machine read a language
Describe a language with a regular expression, an automaton or a grammar, move from one to the other and run by hand what the machine does when it reads a word.
Words and languages
Finite automata
Grammars
Modelling
Measuring chance
Work out a probability, pick the distribution that models a random phenomenon and tell whether a queue can take the load.
Probability
Random variables
Theorems and applications
Queues
Finding the best solution
Set up an optimisation problem and solve it by hand: linear programme, matching, gradient descent, search through a tree of possibilities.
Working agile
Run a team with Scrum or Kanban, read its progress, describe a business process and carry a responsible product vision.
Steering an information system
Explain what an organisation's information system is for, align it with its strategy, weigh its risks and footprint, and lead the arrival of an ERP.
The information system and what is at stake
Governing
Enterprise resource planning
Deciding and keeping
The law of code, data and platforms
Know what the law allows and requires when you write code, process personal data, sign a contract or put a service online..
IT contracts
Personal data
The employee
Creations
Cybersecurity
Platforms
English for IT
Read documentation, a tutorial or a requirements specification in English and write technical documentation, with the words of the trade.
Vocabulary
Reading
Writing
English at work
Apply for a job, write, speak up and work in a team in English.
Basics
Applying
At work
Communicating at work
Know how to find information, gather a need, write the documents of the trade, hold a defence or a meeting and support users, choosing each time the form that suits the reader or listener.
The basics
Finding information
Gathering a need
Writing
Speaking and working in a group
Supporting users
Landing an internship or a job
Know how to read the market and a job posting, build a CV and a letter that answer it, hold an interview, and control what the web and your network say about you.
Computer science B.U.T. year two, application development
The first path fits in one session.
Free: the whole library, unlimited reviews, no ads. See pricing