独立开发一套软件系统需要开发者精通哪些技术?


目前的软件开发产品多以互联网形式呈现 。所以就以一套互联网产品为例来说一下开发者都需要掌握哪些技术 。
一套完整的互联网产品包括移动端(iOS、Android、WP)开发、Web前端开发和后端开发几个大的组成部分 。下面分别描述一下这几个部分都需要学习哪些技术 。
【独立开发一套软件系统需要开发者精通哪些技术?】

独立开发一套软件系统需要开发者精通哪些技术?

文章插图
独立开发一套软件系统需要开发者精通哪些技术?

文章插图
独立开发一套软件系统需要开发者精通哪些技术?

文章插图
另外后端开发还需要掌握数据库知识和一些常见的开发模式 。在当前的大数据时代 。也需要掌握如何在大数据平台上完成软件的开发 。
以上这些只是一些基本的开发技能 。要想开发出一套高质量的软件系统还需要掌握包括测试在内的一系列工具 。当然往往也需要一个专业的开发团队 。
作者简介:中国科学院大学计算机专业研究生导师 。从事IT行业多年 。研究方向包括动态软件体系结构、大数据、人工智能相关领域 。有多年的一线研发经验 。
欢迎关注作者 。欢迎咨询计算机相关问题 。
其他观点:
谢邀 。作为程序员我自己表示并没有达到独立开发一套企业级的软件系统 。如果只是一个比较普通的小项目 。也是需要一定技术素养的 。
本问答由科技黑洞宇文笑创作 。喜欢科技关注宇文笑
由于软件种类过多 。所需技术千变万化 。这里只用B/S架构的传统web项目作为案例 。独立开发系统 。首先你要明确自己需要做什么 。为什么人群做 。怎么做 。what 。who 。how 。WWH就包含了所需要的技能 。
独立开发一套软件系统需要开发者精通哪些技术?

文章插图
what 。做什么 。这需要软件工程的知识 。设计一款软件应该严格按照软件工程的思维去设计 。而不是凭空浮想联翩 。有一些产品经理不懂技术设计的功能令人啼笑皆非 。
who 。这款软件为谁而设计的 。这特别重要 。因为这将影响业务逻辑以及数据库设计 。数据库设计是软件开发非常核心的部分 。尤其是数据量庞大的项目 。调优可不是容易活 。
how 。怎样做 。这就涉及软件的开发 。相关的技术活比较多 。首先是精通一门编程语言 。这里举例Java 。你要懂Java的web运用 。熟悉适用项目的框架 。知道怎么搭框架 。比如基本的SSM框架 。尤其是spring框架的掌握 。然后在嵌入技术比如安全框架shiro 。缓存数据Redis 。
独立开发一套软件系统需要开发者精通哪些技术?

文章插图
需要架构的好 。设计模式至少得熟悉 。Java源码至少得熟读 。性能要调好 。那可能jvm也得去碰一碰 。除此之外 。你还需要Linux的技术 。这是用于服务器的运维 。你还要懂前端 。不然怎么和你的服务器进行数据交互 。
需要独立开发系统需要很多方面的技术 。但是独立开发优秀实用的系统则需要良好的技术素养和高效高质量的团队 。
宇文笑一句话:
没有好的team难有好的software 。
(觉得有理的点点关注)
其他观点:
看运行在什么系统吧 。
我现在运营6-7款软件 。都是自己独立开发的 。大部分都是winform下的软件系统 。
编程语言主要是C# 。其中脚本系统之前用的是python 。后来因为性能问题都改成了C# 。
需要跟软件系统授权整合 。后端类库和数据库需要保持一致 。用的也是C# 。前端用的是asp.net+jqurey+ajax等等 。都是比较老的技术 。运行稳定 。性能可靠 。也没什么不好 。
数据库是sqlserver 。单库装在阿里最便宜的ECS上 。十几万的用户数量 。15分钟在线峰值大概700以内 。足够了 。
其他的像xml、css、ras、md5、json、http、cookie、gdi+、h5等等 。这些点的应用也称得上技术的话 。那可就多了去了 。
不过我一直认为我们绝大部分做的都是应用软件 。说白了就是使用别人已经创造好的技术 。技术再牛你也不过是个使用者 。充其量算是个应用型人才 。搞算法、搞理论或者制订标准的 。那才是真正的技术 。

    推荐阅读