{"id":19596883,"url":"https://github.com/cdiggins/cs321","last_synced_at":"2025-08-13T18:34:50.275Z","repository":{"id":79180727,"uuid":"588327939","full_name":"cdiggins/cs321","owner":"cdiggins","description":"Advanced Programming Techniques","archived":false,"fork":false,"pushed_at":"2023-04-11T18:19:07.000Z","size":97897,"stargazers_count":4,"open_issues_count":0,"forks_count":10,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-27T16:40:30.041Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/cdiggins.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":"2023-01-12T21:30:42.000Z","updated_at":"2024-09-17T14:27:32.000Z","dependencies_parsed_at":"2025-04-27T16:42:10.976Z","dependency_job_id":null,"html_url":"https://github.com/cdiggins/cs321","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cdiggins/cs321","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdiggins%2Fcs321","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdiggins%2Fcs321/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdiggins%2Fcs321/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdiggins%2Fcs321/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cdiggins","download_url":"https://codeload.github.com/cdiggins/cs321/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdiggins%2Fcs321/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270288836,"owners_count":24558869,"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-08-13T02:00:09.904Z","response_time":66,"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":[],"created_at":"2024-11-11T08:57:01.338Z","updated_at":"2025-08-13T18:34:50.227Z","avatar_url":"https://github.com/cdiggins.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CS321 Advanced Programming Techniques \n\n## Bishop's University, Winter Session 2023\n\n### [Course Outline in PDF format](outline.pdf)\n\nThis class is a sequel to an CS211 Introduction to Programming. You will learn advanced programming techniques such as object-oriented programming, functional programming, and software architectural patterns in the context of the C# language.\n\nThe first half of the course will focus on core features and concepts of C#, object-oriented programming, testdriven development, and functional programming, The second half of the course will focus on more advanced programming techniques, as well as principles, practices, and patterns of software design and architecture.\n\nThe language of instruction will be C# 7.0 and the programming environment will be Visual Studio on Windows. The techniques, principles, and patterns learned will be applicable to various high-level multiparadigm languages and programming environments.\n\nThe lab assignments will emphasize building familiarity with C#, Visual Studio, .NET, and coding techniques, with the aim of preparing students to be able to effectively complete the final project. Examples include  using the debugger, release and debug builds, unit and integration testing, refactoring code, code reuse, using packages, code analysis, using Git and GitHub, and disassemblers. \n\nThank you!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdiggins%2Fcs321","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcdiggins%2Fcs321","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdiggins%2Fcs321/lists"}