会使用编程语言但是不会做项目,怎么办?

每日一发小视频

纸上得来终觉浅,绝知此事要躬行。


我猜你应该是自学了一段时间python,或者参加过某培训机构吧


所以会出现,你觉得你好像会用python,会敲几个python语句,可能大概能看得懂,但是不知道怎么做项目,从何开始、从何结束、没有一点头绪、完全不知道怎么开始、该怎么做。


所以你需要做的事,跟着别人去接触项目,去学习怎么开始做项目,找个小公司能接受你这种程度的也好,自己主动意识比较强的话,找一些开源的先看看,然后自己学着动手编程做项目。


你缺乏的就是动手编程、接触项目。


编程教育布道师

我是一名Python在线教育的导师,辅导的学员有几百人,题主问的问题,也是学员们刚开始接触编程的时候提出的问题,同样的困惑被问了几百遍,多少总结出一些东西,现在就拿出来跟大家分享:

第一,手要动起来。我经常跟我的学生说的话就是,“行业大神也是从不会开始的”,鉴定的迈出第一步,哪怕从世界通用的“hello,world”开始,也要动手实际敲键盘,不要觉得简单就不去做了,要是不去做,就失去了跟这门语言的第一次亲密接触。只有敲击了键盘,才能一方面通过手、眼、脑的互动,让记忆领深刻,掌握更快捷;另一方面,在敲击过程中,可能会有各种各样的错误,哪怕是少一个字母,或缩进不一致,这些错误都是学习语言的成本,同样会加深对语言的领悟,也有事半功倍的效果。在第一次跟语言亲密接触之后,语法也是很重要的;

第二;掌握编程语言的语法,语法就好像一栋建筑的基础,所谓“基础不牢,地动山摇”,打基础很重要,要夯实而且要熟练掌握,并且能够灵活运用,无论你是看的书或者看的视频,在这些课程里面都会有很多的示例,要亲手把这些代码,写进自己的电脑里面,并进行验证,迁完不要使用现成的或者书中提供的电子代码进行验证,那样就失去了,锻炼自己细心和信心的机会,同时这些示例都是正确的,如果出现错误需要逐字逐行的进行排查,因为很有可能是粗心造成的。但是这些例子都是别人写好的,与自己掌握这门语言有多大关系呢?

第二,学习资料中的大部分例子都是源于工作中的总结和提炼。有意识的将工作中的问题,与这些示例发生一些关联,同时也是为了让这门语言在工作中生根、发芽、开花、结果。一门语言学了和学会了,还是有很大差别的。学了只是知道其内在逻辑(这个内在逻辑每种语言都是大同小异的),举个例子,每一门语言都有条件、循环控制等基础性的逻辑,其实记住它们并不难,但是应用起来却不简单,最有效的方法就是跟生活、工作相结合。只有将这些语言变成自己的,才能说算是学会了。编程思维和创造力都是在精准使用和熟练掌握之后,经过实践的锤炼得以实现的,但是怎么样才能在实践中锤炼出编程思维和创造力呢?

第三,多读多练,方得精华。

多读,指的是经常读一些大神的加精的代码源码,研习其中的逻辑以及实现的方法,思考一下自己如果遇到同样的问题,能想出什么样的解决方法,和大神的解决方法有什么差别;

所谓“实践出真知”,一方面要求动手实际操作,在实操中找到和提炼出自己的编程思维,这就是“拳打千遍,身形自现”的道理;另一方面只有在实践中,才能找到错误,这些错误就是经验,是弯路,走过了,总结出来了,避免以后重复走,这个就是多练的原因;

做到以上三点,加之循序渐进,必将解决题主心中众多疑虑


大海的欣

没有做过项目,不叫会编程。学编程应该先从需求开始,而不是为学而学。

首先,问问自己有什么需求?想让计算机为你干什么?这个不需要想象力,只需要“懒”。所有的编程都开始于懒的干重复劳动这一基础。如果你不会干某事,你也别期望于让计算机帮你干。

其次,你希望计算机怎么帮你,帮你到什么程度。这就有点跟代码有关了,怎么输入,怎么输出,中间都干些什么……这个阶段写点文字,或者脑图(画点圈显得高大上),关键是写点什么下来,因为,你后面的工作会以这些记录为基础。

然后,看看完成你需要的工作,你需要哪些知识。你之前的知识肯定不够干你想干的。别说你了,我做了10多年程序员,都需要查资料。比如,语音输入,最流行的语音api是谁家的?怎么用?输出pdf,有现成开源代码吗……不要开始学,而是开始找最佳的技术和知识。

再然后,你对完成这个项目,需要哪些知识和技能了然于胸,就可以编写代码了。也不用学,用到了,查人家的手册或者直接copy最佳实践代码就好了。

以上工作,直到你写了代码,算做完成了工作的一半。下面是另一半:

1.调试代码,让它能工作,有时候发现错误的理解了人家的api,甚至需要重写代码

2.优化一下,处理一下很简单的错误操作。有时候需要重写

3.终于能用了,发现很多代码重复,想要优雅一些,还是需要重写

4.重写很多次,发现改代码会造成更多错误,如果以后还想修改自己的代码,就要趁自己还能知道这堆东西是干什么的,就写一些单元测试。多半还是需要重写,以简化单元测试

写在最后,不经历几次重写(专业术语叫重构)的项目不是好项目,不经历几次重构的程序员不叫会写项目。没有大神,只有喜爱,洁癖,不厌其烦的质疑自己,才会成为优秀的程序员。


第三代亻氐立耑人口

你这是只见树木,不见森林。你老师没教好你。

80年代我在浙大学习期间,我学pascal课程的时候,一位从国外回来的教授给我们的第一次作业是写个鸡蛋炒饭的程序,大家愣住了,这怎么写。

这是一个没有标准答案的题,但教授向我们传授了一个概念,计算机编程不光是学习语言,是应用这个概念到生活的每一个项目。什么是计算机语言,计算机语言就是人给计算机的一系列指令,计算机按照这些指令一条一条做事情。什么是项目,项目就是一系列要做的事情,所谓编程就是给计算机一系列指令做这些事情。

咱们来看鸡蛋炒饭这个项目,就是可以分为买蛋,打蛋,热锅,下蛋,翻炒等等。而我们就应该有相应的函数来做这些事情。

一个项目来了,把项目中要做的事情变成相应的函数,把在什么条件下做这些事变成 if,把重复做的事情放在for语句里,先用人的语言写,再用计算机语言写。


石头2115913219159


水滴的三体

最快入手的是去参考一些开源项目的源码,从简单的项目着手,看看整个项目代码是怎么组织的,都需要哪些内容。再有就是学习一下项目相关的需求,设计,编码,测试,分发部署等知识。其实,不需要担心,只要,真正一两个项目做下来就熟悉了。


程序你好

项目开发不是会语言就可以的,需求分析,技术分析,服务器搭建等等前期工作搞定。这些工作一般由技术老大牵头去做。一般程序员只是负责代码实现。想完成整个项目首先要完成技术积累。会使用语言只是基础,框架技术,项目组件选择与合理搭配,数据库技术,网络通信技术,这些基础技术原理都要炉火纯青才是自主开发的基础。


分享到:


相關文章: