这个作业属于哪个课程 | 软件工程 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 1、使用免费的AIGC图像生成工具制作自己的专属logo2、在GitHub上进行个人主页的搭建3、对Markdown编辑有一定的掌握 |
学号 | 102202152 |
个人logo设计
最终生成的logo(使用Liblibai)
设计理念:
我个人比较向往自由一点的生活,所以从小的愿望就是可以周游世界,所以此次我设计的个人专属logo主要表达的就是自己一个人周游世界去世界各地看看
工具介绍:
本次我使用的是一个国产的ai绘图工具,在最开始的时候我尝试使用老师所介绍的ai绘图工具时,发现电脑无法生成出现一些问题.所以我开始尝试使用一些国内的绘画软件,最终找到了适合自己的绘图软件。这个软件有很多基础模型,可以根据自己的喜好来选择
设计过程:
首先,我先确定了我的关键词,例如“环游世界”、"地球全貌"、"艺术"等,以便于符合我的个人主题。而后我的关键词似乎他没有理解到艺术性,我就改变了一个模型,换成了水墨画模型,就得到了我想要的logo
使用免费生图软件的体验和感想:
体验:总的来说使用起来比较方面,绘图很灵敏、很快速,但是有时候无法理解我的要求,导致绘出来的图和我所描述的大相径庭
感想:虽然AIGC有很多的缺点,但是大致方向还是有把握的,在以后的工作或者学习中可以为我们提供一些帮助。
Github个人主页搭建
在博客园发的第一篇随笔
(一)自我评估
(1)技能树
编程语言:c、python
数据结构:学习了一些算法,例如二分查找、推排序等
大数据处理:学习了虚拟机相关知识,例如hbase、hdfs、hive等
(2)技术偏好
数据可视化:学习了python并且这应该算是我掌握最好的编程语言了,所以有点想多学习这方面的知识
数据分析:感觉对spark的学习比较认真了解也相对来说多一点,也算是给了我一点学习这个的信心,所以有点想尝试这个方向
机器学习:刚刚开设的课程,老师上课讲的内容比较有趣,现在还处于一个有兴趣但是观望的状态
(3)缺少的能力
感觉自己最主要缺少的还是实践,感觉理论知识学了一大堆但是真正上手的时候又啥都不会。
(4)代码量
代码量简直少之又少,除了上机考试还有平时的作业以外几乎没什么代码量,纯纯一个理论大于实践的选手。希望在这门课之后自己的代码量能有一个提高吧
(5)预期收获
首先就是希望我的代码量能够有所提高。其次,就是希望不要再是一个纯纯理论大于实践的选手,能够有一些软件开发的实践经验,可以运用到以后的工作当中。
(二)ChatGpt工具生成学习软工指南
用文心一言生成学习指南
- 基础知识准备
1.1 计算机科学基础
编程语言:选择一门基础编程语言(如Python、Java或C++)深入学习,理解编程逻辑、数据结构与算法。
操作系统:了解操作系统的基本概念、进程管理、内存管理、文件系统等。
计算机网络:掌握网络协议、数据传输、网络安全等基础知识。
1.2 数学基础
离散数学:包括集合论、图论、逻辑等,对算法设计、软件逻辑分析有重要作用。
概率论与统计学:在软件测试、性能评估等领域有用。 - 软件工程核心概念
2.1 软件工程原理
软件过程:理解软件生命周期模型(如瀑布模型、敏捷开发等)。
需求分析:学习如何与用户沟通,收集、分析和定义软件需求。
设计:掌握软件架构设计、模块划分、接口设计等。
实现:编码规范、代码审查、版本控制(如Git)的使用。
测试:了解单元测试、集成测试、系统测试、验收测试等类型,学习使用测试工具(如JUnit、Selenium)。
维护:软件升级、错误修复、性能优化等。
2.2 软件质量保证与项目管理
质量保证:理解ISO 9000、CMMI等质量管理体系。
项目管理:学习项目管理工具(如Jira、Trello)、敏捷开发方法(Scrum、Kanban)。
风险管理:识别、评估、监控和应对项目风险。 - 实践项目与案例分析
小型项目:从简单项目开始,如个人博客、计算器应用等,完整经历需求分析、设计、实现、测试、部署的全过程。
开源项目参与:加入开源社区,参与实际项目的开发,学习团队协作、代码规范等。
案例分析:研究成功与失败的软件项目案例,分析原因,吸取经验教训。 - 深入学习与专业领域
软件架构:深入学习微服务架构、云原生架构等现代软件架构。
安全工程:了解软件安全威胁、防护措施、加密技术等。
人工智能与机器学习:根据兴趣,学习如何将AI/ML技术应用于软件开发中。
大数据处理:学习大数据处理框架(如Hadoop、Spark)及数据分析技能。 - 持续学习与认证
技术博客与会议:关注行业动态,阅读技术博客,参加线上/线下技术会议。
专业认证:考取相关认证,如PMP(项目管理专业人士)、CSPO(Scrum Product Owner)、CSM(Certified Scrum Master)等,提升职业竞争力。
网络社交:在GitHub、Stack Overflow等平台建立个人品牌,与同行交流学习。 - 软技能培养
沟通与表达:提升与团队成员、客户的有效沟通能力。
领导力:培养项目管理和团队领导的能力。
时间管理:合理安排工作与学习任务,保持高效。
(三)分析学习指南对我的帮助与影响
这份学习指南对我来说是合理且全面的,它覆盖了软件工程学习的主要方面,从基础知识的准备到深入,再到实践项目与案例分析,这样的学习方式与计划对于想要系统学习软件工程的人来说是非常有帮助的。
于我而言,我是一个软件工程的新手,那么这份指南可以为我提供一个清晰的学习路线和丰富的资源,帮助我快速入门并建立起全面的知识体系。