C# 项目创意100+ 项目创意
教程
想法
编辑:大家好!这篇文章反响热烈,我创建了一个名为“每周项目俱乐部”的项目。每周你都会在收件箱里收到一个需要解决的问题。你可以努力解决问题,整个俱乐部都会提供帮助,确保你按计划完成。点击此处了解更多信息并注册!
前几天我注意到一个现象。我注意到很多人想
学编程,但他们没有明确的目标。我之前讨论过,理解你为什么想学编程可以帮助你选择学习哪种语言(就在这里!),以及如何真正做出这个决定(就在这里!),但项目能帮你什么呢?
我在指导程序员时发现,有一个项目可以帮你屏蔽一些其他干扰,比如担心自己用的语言是否正确。专注于一个特定的目标,你就不用太担心这是否正是你应该使用的语言。最终,你不仅能构建出一些很棒的项目,还能从中学习到一些东西!一石二鸟。
这就是我为初学者程序员精心整理这份项目清单的原因。许多人列出了大量的项目来学习编程,但这些项目很少按难度进行组织。我浏览了几个流行的编程项目创意清单。如果您想查看完整清单,可以在页面底部找到相关资源。
我把它分成了“教程”和“创意”两部分。“教程”包含资源链接,而“创意”只是项目的一般描述。我还列出了一些我最喜欢初学者的资源列表。
看一看,看看是否有东西能激发您的灵感!
教程
我的最爱
- 通过 30 个教程在 30 天内构建 30 个东西
- 30分钟内构建一个简单的搜索机器人
- 使用 Xamarin 和 Visual Studio 构建 iOS 照片库应用程序
- 构建 Android 手电筒应用(视频)
- 制作聊天应用程序
- 使用 React Native 构建 ToDo 应用
简单的
- 使用 C# 和 Xamarin 创建空白应用程序(正在进行中)
- 使用 Xamarin 和 Visual Studio 构建 iOS 照片库应用程序
- 构建加载屏幕
- 使用 JS 构建 HTML 计算器
- 构建 React Native Todo 应用程序
- 使用 Node.js 编写 Twitter 机器人
- 创建一个简单的 RESTFUL Web 应用程序
- 30分钟内构建一个简单的搜索机器人
- 构建一个工作抓取 Web 应用
- 使用 Python 挖掘 Twitter 数据
- 使用 Scrapy 和 MongoDB 抓取网站数据
- 如何使用 Python 和 Selenium WebDriver 进行爬取
- 我应该用 BeautifulSoup 看哪部电影
- 使用 Flask 构建微博
- 在 Django 中创建博客 Web 应用
- 选择你自己的冒险演示
- 使用 Flask 和 RethinkDB 构建待办事项列表
中等的
- 通过构建简单的 RPG 游戏学习 C#
- 使用 C# 创建一个 Rogue-like 游戏
- 使用 Clojure 构建 Twitter 机器人
- 构建拼写检查器
- 使用 Java 构建简单的 HTTP 服务器
- 构建 Android 手电筒应用(视频)
- 构建具有用户身份验证的 Spring Boot 应用程序
- 通过 30 个教程在 30 天内构建 30 个东西
- 使用纯 JS 构建应用程序
- 创建无服务器 React.js 应用程序
- 创建 Trello 克隆
- 使用 React、Node、MongoDB 和 SocketIO 创建角色投票应用程序
- React 教程:克隆 Yelp
- 使用 React.js 和 Node.js 构建一个简单的 Medium 克隆
- 在 JS 中集成 MailChimp
- 使用 React Native 构建 ToDo 应用
- 制作聊天应用程序
- 使用 React Native 创建新闻应用程序
- 学习 React 的 Webpack
- 构建你自己的 React 样板
- 基础 React+Redux 入门教程
- 建立预约安排程序
- 使用 Angular 2+ 构建支持离线的 Hacker News 客户端
- 使用 Angular 5 的 ToDo 应用
- 使用 Angular 5 的 ToDo 应用
难的
- 构建解释器(第 14 章用 C 语言编写)
- 用 C 语言编写 Shell
- 编写 FUSE 文件系统
- 构建您自己的文本编辑器
- 构建你自己的 Lisp
- 构建 CoreWiki这是一个 Wiki 风格的内容管理系统,完全使用 C#、ASP.NET Core 和 Razor Pages 编写。您可以在此处找到源代码。
- 使用 Clojure 和 Atlassian Connect 构建 JIRA 集成
- 构建解释器(第 4-13 章用 Java 编写)
- 使用 Mocha、React、Redux 和 Immutable 构建一个基于测试优先开发的全栈电影投票应用程序
- 使用 React 和 Node 构建 Twitter 流
- 使用 Webtask.io 构建无服务器 MERN Story 应用程序
- 使用 React + Parcel 构建 Chrome 扩展程序 使用 Pupepeteer 和 Jest 测试 React 应用程序
- 使用 React 编写生命游戏代码
- 构建一个带有情绪分析的聊天应用程序
- 构建全栈 Web 应用程序设置
- 构建随机报价机
- 使用 Angular 6 构建一个美丽的真实世界应用程序:
- 使用 BootStrap 4 和 Angular 6 构建响应式布局
- 使用 Django 和测试驱动开发构建待办事项列表
- 使用 Python 构建 RESTful 微服务
- 使用 Docker、Flask 和 React 的微服务
- 使用 Flask 构建一个简单的 Web 应用程序
- 使用 Flask 构建 RESTful API – TDD 方式
- 在 20 分钟内创建一个 Django API
想法
简单的
99瓶
- 创建一个程序,打印出歌曲“墙上的 99 瓶啤酒”的每一行。
- 不要使用列表来列出所有数字,也不要手动输入所有数字。而是使用内置函数。
- 除了“take one down”这句话之外,你不能直接在歌词中输入任何数字/数字名称。
- 请记住,当剩下 1 瓶时,“bottles”一词将变为单数。
魔法8球
- 模拟一个神奇的 8 球。
- 允许用户输入他们的问题。
- 显示正在进行的消息(即“思考”)。
- 创建 20 个响应,并显示一个随机响应。
- 允许用户提出另一个问题或退出。
-
奖金:
- 添加一个 GUI。
- 它必须有一个框供用户输入问题。
-
它必须至少有 4 个按钮:
- 问
- 清除(文本框)
- 再次播放
- 退出(这必须关闭窗口)
石头剪刀布游戏
- 创建一个石头剪刀布游戏。
- 让玩家选择石头、剪刀或布。
- 让计算机选择它的移动。
- 比较选择并决定谁获胜。
- 打印结果。
- 子目标:
- 让玩家有再次玩的选择。
- 记录分数(例如玩家:3/计算机:6)。
倒计时钟
- 创建一个程序,允许用户选择时间和日期,然后以给定的间隔(例如每秒)打印出一条消息,告诉用户距离所选时间还有多长时间。
- 子目标:
- 如果选定的时间已经过去,程序会告诉用户重新开始。
- 如果您的程序分别要求输入年、月、日、小时等,请允许用户输入月份名称或其数字。
- 提示:利用时间和日期时间等内置模块可以将这个项目从一场噩梦变成一项更简单的任务。
中等的
番茄钟
创建一个番茄工作法计时器。
番茄工作法是一种时间管理方法。它使用计时器将工作分解成几个时间段,通常每段25分钟,中间穿插短暂的休息。这些时间段被称为“pomodoros”,是意大利语“pomodoro”(番茄)的复数形式,源自西里洛大学时期使用的番茄形厨房计时器。
这项原始方法包含六个步骤:
确定要完成的任务。
设置番茄钟(通常为25分钟)。
开始执行任务。
当钟响起时结束工作,并在纸上打勾。
如果勾选次数少于四个,请短暂休息(3-5分钟),然后转到步骤2。
四个番茄钟之后,请休息更长时间(15-30分钟),将勾选次数清零,然后转到步骤1。点击此处
了解更多关于番茄钟的信息
Google案例
- 这是一个可以让你用英语句子玩的游戏。
- 用户将以任意格式输入一个句子。(大写或小写或两者混合)
- 程序必须将给定的句子转换为谷歌案例。什么是谷歌案例风格的句子?know_about_it_here:。
- 子目标:
- 然后程序必须将给定的句子转换为驼峰式大小写。要了解有关驼峰式大小写的更多信息,请单击此处
- 句子中可以输入任意数量的空格。
骰子模拟器
- 允许用户输入骰子的面数以及应掷出的次数。
- 您的程序应该模拟掷骰子并跟踪每个数字出现的次数(这不必显示)。
- 最后,打印出每个数字出现的次数。
- 子目标:
- 调整您的程序,以便如果用户在需要时没有输入数字,程序将不断提示他们输入真实数字,直到他们这样做为止。
- 将程序放入循环中,以便用户可以继续模拟掷骰子,而不必重新启动整个程序。
- 除了打印每面出现的次数外,还要打印其出现的百分比。如果可以,请将百分比四舍五入到4位数字或小数点后两位。
- 奖金:
- 你正准备玩一个棋盘游戏,却发现自己没有骰子。幸好你有这个程序。
- 1. 创建一个程序,打开一个新窗口并绘制 2 个六面骰子
- 2. 允许用户退出或再次滚动
- 允许用户选择屏幕上要绘制的骰子数量(1-4)2.将骰子的总数加起来并显示
清点并修复绿色鸡蛋和火腿
你们当中有些人可能还记得苏斯博士的故事《绿鸡蛋和火腿》。对于那些不记得或从未听说过这个故事的人,我给你们讲了这个故事。然而,我讲的这个故事有一个问题——每次用到“I”这个词时,它都是小写的。
由于这个问题,你们的任务是:
- 将我给你的故事复制到常规文本文件中。
- 编写一个程序,通读故事,并在需要大写时将字母 i 改为大写。(当字母 i 出现在 sam-I-am 的名字中时,请务必进行修改。)
- 让你的程序创建一个新文件,并让它正确地写出故事。
- 打印出已纠正的错误数量。
- 当你完成后,你应该已经纠正了这么多错误。
难的
随机维基百科文章
如果您访问过维基百科,您可能已经注意到屏幕左侧有一个指向随机文章的链接。虽然查看自己被带到了哪个文章很有趣,但有时看到文章名称也很不错,这样如果觉得无聊就可以跳过它。幸运的是,维基百科有一个 API 允许我们这样做。单击此处
。 然而,存在一个难题。由于维基百科包含来自世界各地的主题的文章,其中一些文章的标题中包含特殊字符。例如,关于西班牙画家Erasto Cortés Juárez 的文章中包含 é 和 á。如果您查看这篇特定文章的API ,您会发现标题是“Erasto Cortés Juárez”,并且 \u00e9 和 \u00e1rez 替换了前面提到的两个字母。(有关这是什么的信息,请先查看文档中此页面的前半部分)。为了使您的程序运行,您必须以某种方式处理这个问题。
- 创建一个程序,从官方维基百科 API 中提取标题,然后逐一询问用户是否愿意阅读该文章。
- 例子:
- 如果第一个标题是 Reddit,那么程序应该询问“您想阅读有关 Reddit 的文章吗?”如果用户回答是,那么程序应该打开文章供用户阅读。
- 提示:单击此处查看如何使用文章 ID 访问实际文章。
- 子目标:
- 就像之前提到的,针对标题中出现unicode的可能性采取一些措施。
- 无论您是想让您的程序简单地过滤掉这些文章,还是想将代码真正转换成可读的字符,这都取决于您。
- 一旦用户选择了要阅读的文章,程序就会暂停,并允许他或她在阅读完毕后继续浏览不同的文章标题。
- 允许用户只需按下 ENTER 即可询问有关新文章的问题。
天气怎么样?
如果您想了解 API 的基础知识,请查看iamapizza 的这篇文章。
- 创建一个程序,从 OpenWeatherMap.org 提取数据并打印出当前天气的信息,例如您所在地的最高气温、最低气温和降雨量。
- 子目标:
- 打印出未来 5-7 天的数据,这样您就有了 5 天/一周的预测。
- 将数据打印到另一个您可以打开和查看的文件,而不是在命令行中查看信息。
- 如果您了解 html,请编写一个可以打印信息的文件,以便您的项目更有趣。
- 尖端:
- Json 中的 API 本质上是列表和字典。请记住,要引用列表中的内容,必须通过它在列表中的编号元素来引用它;要引用字典中的键,必须通过其名称来引用它。
- 不喜欢摄氏度?在 API 的 URL 末尾添加 &units=imperial,即可接收华氏度数据。
来源
- https://github.com/tuvtran/project-based-learning
- https://github.com/jorgegonzalez/beginner-projects
- https://github.com/MunGell/awesome-for-beginners/blob/master/README.md
- https://github.com/sarahbohr/AbsoluteBeginnerProjects
你觉得怎么样?你喜欢通过具体的项目来学习,还是更喜欢不通过项目来学习?
文章来源:https://dev.to/samborick/100-project-ideas-oda