{"id":29733803,"url":"https://github.com/d-vale/edx_cs50","last_synced_at":"2025-07-25T10:30:38.001Z","repository":{"id":302454015,"uuid":"1008925768","full_name":"d-vale/edx_cs50","owner":"d-vale","description":"Ce repository documente mon parcours d'apprentissage du cours CS50x de Harvard","archived":false,"fork":false,"pushed_at":"2025-07-02T13:03:06.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-02T13:45:24.109Z","etag":null,"topics":["c","edx","edx-cs50","harvard","harvardcs50","js","python","sql"],"latest_commit_sha":null,"homepage":"https://www.edx.org/cs50","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/d-vale.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-26T09:56:57.000Z","updated_at":"2025-07-02T13:03:09.000Z","dependencies_parsed_at":"2025-07-02T13:45:26.367Z","dependency_job_id":"c40f6649-c8f4-41f8-b796-9e04a30ce0ef","html_url":"https://github.com/d-vale/edx_cs50","commit_stats":null,"previous_names":["d-vale/edx_cs50"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/d-vale/edx_cs50","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-vale%2Fedx_cs50","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-vale%2Fedx_cs50/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-vale%2Fedx_cs50/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-vale%2Fedx_cs50/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d-vale","download_url":"https://codeload.github.com/d-vale/edx_cs50/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-vale%2Fedx_cs50/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266990852,"owners_count":24017730,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","edx","edx-cs50","harvard","harvardcs50","js","python","sql"],"created_at":"2025-07-25T10:30:32.326Z","updated_at":"2025-07-25T10:30:37.976Z","avatar_url":"https://github.com/d-vale.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CS50x - Harvard Computer Science Course\n\n[![CS50x](https://img.shields.io/badge/CS50x-Harvard-crimson)](https://cs50.harvard.edu/x/2025/)\n[![edX](https://img.shields.io/badge/Platform-edX-blue)](https://learning.edx.org/course/course-v1:HarvardX+CS50+X/home)\n[![Progress](https://img.shields.io/badge/Progress-18%25-orange)](#progression)\n\n## 📖 À propos\n\nCe repository documente mon parcours d'apprentissage du cours **CS50x** de Harvard, une introduction complète à l'informatique suivie par plus d'un million d'étudiants dans le monde. Ce cours gratuit via edX couvre les fondamentaux de la programmation, des algorithmes et du développement web.\n\n### 🎯 Mes objectifs\n- Maîtriser les bases du langage **C** et de la gestion mémoire\n- Apprendre **Python** et ses applications pratiques\n- Comprendre les structures de données et algorithmes fondamentaux\n- Découvrir les technologies web (HTML, CSS, JavaScript, Flask)\n- Renforcer mes compétences en bases de données avec **SQL**\n- Préparer mon Master en Computer Science\n\n## 📚 Programme du cours\n\n### **Week 0 - Scratch** 🧩\nIntroduction à la pensée computationnelle avec Scratch, blocs visuels, concepts de base de la programmation.\n\n### **Week 1 - Langage C** ⚙️\nSyntaxe C, compilation, types de données, fonctions, bibliothèques standards, debugging avec `printf`.\n\n### **Week 2 - Tableaux** 📊\nArrays, chaînes de caractères, manipulation de caractères, arguments en ligne de commande, cryptographie basique.\n\n### **Week 3 - Algorithmes** 🔍\nAlgorithmes de tri (bubble, selection, merge), recherche (linéaire, binaire), analyse de complexité (Big O), récursivité.\n\n### **Week 4 - Mémoire** 🧠\nPointeurs, allocation dynamique, gestion heap/stack, manipulation de fichiers, formats d'images (BMP, JPEG).\n\n### **Week 5 - Structures de données** 🌳\nListes chaînées, arbres binaires, tables de hachage, piles, files, optimisation des accès mémoire.\n\n### **Week 6 - Python** 🐍\nTransition vers Python, syntaxe haut niveau, bibliothèques, programmation orientée objet, parsing de données.\n\n### **Week 7 - SQL** 🗄️\nBases de données relationnelles, requêtes SQL, joins, indexation, conception de schémas, SQLite.\n\n### **Week 8 - Web Frontend** 🎨\nHTML5, CSS3, JavaScript, DOM manipulation, responsive design, frameworks CSS, interfaces utilisateur.\n\n### **Week 9 - Web Backend** 🚀\nFlask, sessions, cookies, APIs REST, sécurité web, authentification, déploiement d'applications.\n\n### **Week 10 - Projet final** 🏆\nDéveloppement d'un projet personnel intégrant les compétences acquises, présentation et documentation.\n\n## 📈 Progression\n\n### ✅ Semaines terminées\n\n| Semaine | Sujet | Exercices réalisés | Statut |\n|---------|-------|-------------------|--------|\n| **Week 0** | Scratch | Projet Scratch (non inclus dans le repo) | ✅ Terminé |\n| **Week 1** | Langage C | [`hello.c`](week1/hello.c), [`mario.c`](week1/mario.c), [`credit.c`](week1/credit.c) | ✅ Terminé |\n\n### 🔄 En cours / À venir\n\n| Semaine | Sujet | Prévision |\n|---------|-------|-----------|\n| **Week 2** | Arrays | En cours |\n| **Week 3** | Algorithmes | À venir |\n| **Week 4** | Mémoire | À venir |\n| **Week 5** | Structures de données | À venir |\n| **Week 6** | Python | À venir |\n| **Week 7** | SQL | À venir |\n| **Week 8-10** | Web \u0026 Projet final | À venir |\n\n## 🛠️ Détail des exercices\n\n### Week 0 - Scratch\n**📝 Problem Set :** [https://cs50.harvard.edu/x/2025/psets/0/](https://cs50.harvard.edu/x/2025/psets/0/)\n\n| Exercice | Description | Fichier | Difficulté |\n|----------|-------------|---------|------------|\n| **Scratch Project** | Création d'un projet interactif avec Scratch (blocs visuels) | *Non inclus dans le repo* | ⭐ |\n\n### Week 1 - Langage C\n**📝 Problem Set :** [https://cs50.harvard.edu/x/2025/psets/1/](https://cs50.harvard.edu/x/2025/psets/1/)\n\n| Exercice | Description | Fichier | Difficulté |\n|----------|-------------|---------|------------|\n| **Hello** | Programme interactif de salutation personnalisée | [`hello.c`](week1/hello.c) | ⭐ |\n| **Mario** | Génération de pyramides adjacentes avec validation d'entrée | [`mario.c`](week1/mario.c) | ⭐⭐ |\n| **Credit** | Validation de cartes de crédit avec algorithme de Luhn | [`credit.c`](week1/credit.c) | ⭐⭐⭐ |\n\n## 🔗 Ressources\n\n- [**Cours CS50x 2025**](https://cs50.harvard.edu/x/2025/) - Site officiel\n- [**edX Platform**](https://learning.edx.org/course/course-v1:HarvardX+CS50+X/home) - Plateforme d'apprentissage\n- [**CS50 IDE**](https://ide.cs50.io/) - Environnement de développement\n- [**Documentation CS50**](https://cs50.readthedocs.io/) - Référence technique\n\n## 💡 Compétences développées\n\n- **Programmation en C** : Syntaxe, pointeurs, gestion mémoire\n- **Algorithmes** : Tri, recherche, analyse de complexité\n- **Structures de données** : Listes, arbres, tables de hachage\n- **Développement web** : Frontend et backend complets\n- **Bases de données** : Conception et requêtes SQL\n- **Résolution de problèmes** : Approche méthodique et debugging\n\n---\n\n*Dernière mise à jour : Juillet 2025*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-vale%2Fedx_cs50","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd-vale%2Fedx_cs50","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-vale%2Fedx_cs50/lists"}