学习编程过程中感觉很有趣,为什么到单独去做项目就不知道从何下手?

2024-03-03 00:08

本文主要是介绍学习编程过程中感觉很有趣,为什么到单独去做项目就不知道从何下手?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本人是做java的,就用java来举例说明,其他语言应该是类似的。

在讲做项目如何下手之前,先分析三个概念,第一是编程,第二是做学习项目,第三是真正在公司里做项目。

编程好理解,写段加减乘除的代码也算编程,写一个带界面的游戏程序也算,当然在工作中做项目更算是编程了,不过对初学者来说,编程一般是指用程序语言开发个带界面的功能,这种属于属于自娱自乐,也能当成一门兴趣。

接下来说做学习项目,比如某人想通过自学入行Java,学了半天Java编程语言后,想自己做个项目来综合练习下,这种项目就是叫学习项目。

第三来讲下做商业项目,这也好理解,就真正入职后,在公司里做能挣钱的项目。

在不少人的理解中,入行Java的步骤是,先学编程,再通过自己做一个或若干个学习项目证明自己有开发Java项目的能力,最后再去找Java工作,真正靠Java挣钱。但很多人入行,走的不是这条路径,或者说,在学java阶段,没有必要通过单独开发项目来提升自己的能力。

为什么呢?因为在大多数软件公司里,程序员,尤其是刚入行的初级程序员,不是从零开始做项目,而是通过借鉴现有的代码来实现功能。

比如某个程序员入职后,要做的是仓库管理系统。公司不是单纯地对程序员说,我要做这个系统,然后把待实现的业务功能告诉你,再叫你做。而是会先让你下载现有的仓库管理系统的代码,让你跑通,再让你熟悉各种数据表,再让你做某个业务模块。

在做业务模块时,也不是让程序员直接做,一般会告诉程序员,这个模块里,可以从哪里抄连接数据库的代码,从哪里抄相关的业务代码,而具体让程序员发挥的点很少,程序员可以通过抄现有代码,根据实际业务修改来实现。

也就是说,在真正做项目时,程序员也不是从零开始做,更不是单独做,一方面有代码可以借鉴,另一方面有问题还可以问人。

对应地,在面试中,面试官也不会确认程序员单独做学习项目的能力,而是会确认相关技术在项目里的使用情况。这方面的细节大家可以看我如下的文章。

你觉得用java写个什么项目就能和面试官谈笑风生了?42 赞同 · 3 评论回答

既然程序员在工作时无需单独从零开始做项目,而且面试官也不会确认单独做个项目的能力,所以程序员在学习过程中,也无需从零开始做项目。

不过我还真听说有人在学习过程中,在学java语法后,想做一个系统,比如仓库系统或人事系统,在做的过程中费了很大功夫和时间,好不容易借鉴开源项目做好了这个项目,但由于面试不问这个,从而依然无法找到Java方面的工作,这就绝对属于走弯路了。

那么怎么通过做学习项目来提升自己的编程技能,从而达到能工作的程度?(Java方向)

1 积累些Java SE方面的技能,比如集合,多线程和异常处理等。

2 学好Spring Boot+JPA或Mybatis做增删改查业务的流程。

3 可以通过运行学习项目来巩固技能,请注意这里的做法是运行通现有项目,而不是自己开发一个项目,也不是自己改编一个项目,相关做法大家可以参考我如下的高赞文章。

怎么吃透一个java项目?1314 赞同 · 49 评论回答

4 别再深入学,因为在学习阶段学不深,再深入的技能得到项目里通过实践去学。此时就可以通过简历和面试,去找工作了,其中写简历和准备面试的细节,大家可以参考我如下的文章。

请问自学java开发,怎么才能找到一份实习的工作?3 赞同 · 0 评论回答

回到主题上,在学编程的过程中,要做的是积累技能并以此找到工作,出于这个目的,单独去做个项目不是必须的,甚至可以说是学习中的弯路,正确的做法可以是运行通现有的书上或视频里的项目来综合巩固技能。

这篇关于学习编程过程中感觉很有趣,为什么到单独去做项目就不知道从何下手?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/767840

相关文章

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

Java Kafka消费者实现过程

《JavaKafka消费者实现过程》Kafka消费者通过KafkaConsumer类实现,核心机制包括偏移量管理、消费者组协调、批量拉取消息及多线程处理,手动提交offset确保数据可靠性,自动提交... 目录基础KafkaConsumer类分析关键代码与核心算法2.1 订阅与分区分配2.2 拉取消息2.3

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

AOP编程的基本概念与idea编辑器的配合体验过程

《AOP编程的基本概念与idea编辑器的配合体验过程》文章简要介绍了AOP基础概念,包括Before/Around通知、PointCut切入点、Advice通知体、JoinPoint连接点等,说明它们... 目录BeforeAroundAdvise — 通知PointCut — 切入点Acpect — 切面