首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我的第一个“正式”开源项目

前言 接触编程和开源也有好几年了,不论是自己、和朋友一起写,还是在公司写项目,都积累了不少的经验了。...但是我为什么把这个项目叫做我的第一个正式开源项目呢,因为只有这个项目,才真的是我自己从0开始一步步规划,设计,要一步一步把它做完的。...项目介绍 aurora-mall 是一个基于 Spring Cloud Alibaba + Vue + Element-UI 开发的开源商城项目。...网站的价值在于它能为用户提供什么价值,在于网站能做什么,而不在于它是怎么做的,所以在网站还很小的时候就去追求网站的架构是舍本逐末,得不偿失的。...所以我在项目一开始设计的时候,也是不可能考虑的特别深入的,但是会随着一个个 commit 慢慢的发展迭代,变成一个好的开源项目。

35911

如何设计良好的技术项目文档结构

什么高可用高性能都是扯淡,良好的用户体验根本不存在。如果是一些内部的技术项目,特别是一些基础技术设施的技术项目,反而对技术要求是比较高的。...我目前在基础架构团队负责内部技术项目的一些工作,包括产品设计、交互逻辑、撰写PRD、项目管理以及测试工作。 这篇文章,想和大家聊聊,技术项目中一个良好的文档结构如何设计。...项目管理 无论是TO C的外部业务需求迭代还是内部的技术项目,项目管理是必不可少的事情。这里我想介绍下面三点我个人认为在项目管理中比较重要的点。...我们不能祈求所有人都具备良好的职业素养和较高的自觉性,只能通过一些流程规范去尽可能降低和避免带来的问题。而且,周报也是向上管理的重要方式! 四大阶段 启动阶段 项目概述:即为什么做这个项目?...背景是什么?要解决什么问题?面临哪些风险?项目的价值是什么? 项目规划:长期规划是什么?分几个阶段实现?每阶段重要产出物和里程碑是什么?如何量化评估每个阶段的交付物?

1.6K11
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    聊聊第一个开源项目 - CProxy

    初衷 最近在学C++,想写个项目练练手。对网络比较感兴趣,之前使用过ngrok(GO版本的内网穿透项目),看了部分源码,想把自己的一些优化想法用C++实现一下,便有了这个项目。...项目介绍 CProxy是一个反向代理,用户可在自己内网环境中启动一个业务服务,并在同一网络下启动CProxyClient,用于向CProxyServer注册服务。...最后再根据Tunnel配置文件完成多个Tunnel的注册。需要注意的是,每注册一个Tunnel,Server端就会多监听一个PublicPort,作为外部访问LocalServer的入口。...在数据传输模式中,proxy_conn不会去读取解析缓冲区中的数据,只会把数据通过pipe管道转发到local_conn; 空闲模式时,会读取并解析缓冲区中的数据,此时的数据是一些控制信息,用于调整proxy_conn...项目使用shutdown去处理数据连接的断开,当CProxyServer收到publicClient的fin包(CProxyClient收到LocalServer的fin包)后,通过ctlConn通知对端

    75620

    如何养成良好的渗透测试项目管理习惯

    如何管理渗透项目,如何养成一个良好的渗透记录习惯 渗透项目都不建议放云上,建议在电脑里搞个文件夹,项目分类,渗透分类,然后资产分类。...最好是一个项目开一台断网虚拟机,然后虚拟机快照,一个项目一个快照 季度-时间-具体项目名称-实施内容这样分,文件夹也行,通过文档记录也行。 命名归类,比如政府,教育,医院,学校,等等......,应该自觉的在工作文件夹中建立项目文件夹 痕迹留存(测试的时候使用Word/Markdown进行测试痕迹留存,增加XX、删除XX、修改XX、上传了XX...最最重要的是BurpSuite的日志留存,一定要留着...,大家在打开burp的时候应该新建项目文件) ?...这类信息格式多样,可能是图片、文字、文件等。为了便于管理这些内容,Kali Linux自带的一款桌面笔记工具KeepNote是。该工具支持富文本格式,可以在文字中添加链接、图片、屏幕截图,甚至是附件。

    1.3K10

    什么使DevOps中的代码审查良好?

    运行良好的代码审阅在代码质量和安全性与快速创新自由之间取得平衡。 改善软件开发生命周期,向客户交付软件的速度以及该软件的质量都是DevOps的重要前提。...还可以帮助确保整个团队都知道他们项目中正在发生的事情。就像技术中的任何事物一样,实现代码审查的方式有很多,并且在如何操作代码审查以及代码审查的目标是什么方面可能会有些混乱。...我想大家可以说,我们已经看到更多的高级开发人员使用了拙劣的措辞,这暗示着代码审查和围绕代码更改的对话中的语气不当。许多开源社区正试图通过行为准则声明解决这一问题。...更重要的是,他们还感到有能力在代码审查中质疑和评论更多高级开发人员所做的更改。 不去在意职称 通过讨论谁应该在代码审查中进行审查以及什么是代码审查,应该清楚一件事:初级和高级职称的意义很小。...您和您的团队的运作方式可能有所不同,因此应始终努力找到最适合个人团队和项目的方法。我的团队和我周围的人使用代码审查有两个目的:规范代码审查流程,并基于自动代码质量检查阻止合并到主干。

    97462

    什么是开源库 browserslist

    Browserslist 是一个由社区维护的开源工具库,用于定义前端代码所需要支持的浏览器和其版本。它主要用于前端开发者希望对代码进行兼容性处理时,提供一个统一的浏览器支持范围描述。...这种配置方式比较适合那些需要兼顾大部分主流用户的项目,尤其是对市场份额要求较高的网站。...例如,如果希望项目中使用的特性始终是最新的,且兼容最近的两个主流版本,那么使用 last 2 versions 是一个很好的选择。...通过市场数据的动态更新,开发者不必手动维护对每个浏览器版本的支持,而是可以自动依据市场趋势来做出判断。这对于大型项目,尤其是那些需要长期维护的项目非常有价值。...小结Browserslist 是现代前端开发中不可或缺的工具,它通过提供一个统一的浏览器兼容性配置,帮助开发者与工具链之间保持一致,从而确保代码在目标浏览器中具有良好的兼容性。

    10310

    什么是开源问卷系统

    开源表单系统是指基于开源软件的一种系统,用于创建、管理和处理表单和调查。它提供了一个可定制和可扩展的平台,用于设计各种类型的表单,例如用户调查、注册表格、反馈表单等。...开源表单系统的核心是一个具有用户友好界面的表单设计器,使用户能够轻松地创建和编辑表单。...比如Tduck填鸭表单,它通常提供了各种表单字段选项,如文本框、单选框、复选框、下拉菜单等,以便用户能够根据其需求构建复杂的表单结构。Tduck填鸭表单开源表单系统的一个主要优势是其开放性和可定制性。...由于是开源软件,用户可以自由地访问和修改系统的源代码,以满足其特定需求。这使得开源表单系统成为许多组织和开发者的首选,因为它们可以根据自己的要求进行自定义和集成。...集成和扩展性:开源表单系统通常具有良好的集成和扩展性,允许与其他系统和服务进行集成。这可能包括与数据库系统、电子邮件服务、工作流引擎等的集成,以实现更广泛的功能和自动化流程。

    42420

    我的第一个“项目”的故事是怎样的

    第一个项目故事:基于 docker+k8s+jenkins+gitlab 的持续集成 项目实现效果:开发人员把自己分支的代码从 gitlab合并到 master 分支,触发jenkins job 执行代码编译打包和部署到测试环境操作...架构运行思路:gitlab上更新了代码以后,通过webhook检测到gitlab上有变动,然后将给本机的jenkins传送一个回执,执行任务,任务内容是进行代码pull到本机中然后通过脚本命令把代码转移到本机的...项目过程:记得这个项目大概是2017年上半年做的,当时对于 k8s jenkins 了解的还停留在听说的阶段,但是接到这个项目需求当时自己非常的紧张和兴奋,紧张是因为有好多的未知技术需要探索,兴奋是可以了解更多的新技术...;经过大量的查阅文档实践测试终于通过两个星期的没有昼夜的努力实现了需求。...交付的那一刻非常的激动。 总结:当时自己工作经验不足,实战经验也少,回想起来自己3年前做的项目依然可以看到自己的成长之路,现在回头看之前做过的项目有好多可以改进和提升的地方

    42930

    为什么开源是现代开发的核心?

    欢迎大家来踩踩~ 《IDEA开发秘籍专栏》学会IDEA常用操作,工作效率翻倍~ 《100天精通Golang(基础入门篇)》学会Golang语言,畅玩云原生,走遍大小厂~ 为什么开源是现代开发的核心...然而,仅仅是共享知识库可能还不足以解释开源的流行。开源的成功还建立在一个重要的社区原则上:合作。在这种模式下,当某人在项目中遇到问题或需要新功能时,他们可以直接修改源代码并将其贡献回社区。...此外,开源项目通常有广泛的用户群体,他们在真实环境中使用这些项目,并提供宝贵的反馈。这种反馈机制使得开源项目能够根据真实世界的需求和挑战进行快速迭代。开源项目不断改进,以适应不断变化的环境和用户期望。...这些工具不仅功能强大,而且易于定制,同时还与其他开源项目有着良好的兼容性,使得整个开发过程更加流畅。...培养新一代的开发者 开源为新一代的开发者提供了学习和成长的平台。通过参与开源项目,初学者得以实际接触大型项目,学习最佳实践,与经验丰富的开发者互动,并为实际的软件开发项目做出贡献。

    20710

    必应壁纸,我的第一个 400 Star 开源项目

    开源地址:github.com/niumoo/bing-wallpaper/ 今天是 2022 年 7 月 15 日,我的 GitHub 开源仓库必应壁纸迎来了第 400 个 Star。...说来惭愧,我在 GitHub 开源了很多仓库,但是好好维护下来的没有几个,这一个意外有了 400 Star 的开源项目更是无心之举,已经许久没有更新。好在这个项目也不需要经常的更新。...起因 这个开源项目是做什么的呢?起因是我经常使用必应搜索,必应搜索网站壁纸每日一换,十分精美,以致我想收藏起来。...GitHub 贡献记录 优化 抓取方式 目前使用自动抓取的方式,没有多余逻辑,必应会根据请求 IP 判断位置是国内还是国外,必应国内版和国际版每日图片可能会有不同。...由于我部署在 GitHub 上,默认是国外 IP,因此每次抓取的都是国外必应壁纸,所以会有在 GitHub 仓库看到图片和在国内必应网站上看到的图片不同的问题,断断续续有网友问过这个问题,说优化一直没有优化

    66410

    我的第一个 60k+ Star开源项目—JavaGuide

    也就是现在受到这个项目的鼓励,我就正式开始专注做 Java 方向的知识点总结。 个人感觉开源的意义还是非常大的!...JavaGuide 概览 可以不谦虚的说,JavaGuide 目前应该是 Github 上 Java 偏文档类型的开源项目中做的最好的一个,吹牛简单,我觉得可以直接上数据说话。...评判一个开源项目的热度或者说项目的质量,很大一部分可以通过 Star、Issue、PR、Commit 记录这几个维度来看。...开源 JavaGuide 我获得了什么 帮助别人的同时,提高了自己的能力,夯实了 Java 基础,提高了自己对于开源平台的认识。 面试的一个加分项。甚至,因为它获得过多个大型互联网公司面试的邀请。...Github 上面有很多优秀的项目值得我们学习,多逛逛 Github 比刷头条实在。 对于工程师来说,编码能力是关键,理论知识只是服务我们更好地编码。 .......

    91711

    Windows为什么是闭源Linux是开源?

    linux属于代码开源主要应用范围还是在服务器端以及嵌入式的手持设备上,从总体市场的绝对数量上linux已经领先于windows,但是从商业的变现能力上windows还是远远大于linux,主要和其出身有一定的关系...,微软本身起点就是一个商业公司,出发点就是如何如何创作利润,毕竟企业生存的关键还是有利润产生,所以在商业推广上必然是沿着对企业发展有利的方向,这也是顺其自然的事情。...linux诞生源于软件爱好者的群体,一群向往着自由有点排斥商业模式的人创建起来的,所以在开源社区里面属于祖师爷级别的存在,更像是一群真正意义的软件人自发制造出来系统,和本身赢利并没有太多直接的关系,开源精神的其中一点就是分享...从微软的角度出发没有开源的必要,毕竟现在这种模式已经能够统一PC操作系统,而且开源了代码对于系统安全性也是一种冲击,毕竟在PC系统上面微软还是绝对意义上的霸主,微软没有开源系统代码的动力。...linux从设计之初就代码就是开源的,本身在桌面版本上使用的相对比较少,所以相对来讲病毒也会少很多,毕竟实际使用的用户基数远少于windows系统,windows系统的几乎每天都能找到漏洞,所以微软公司背后就有一个强大的技术团队在支撑

    2.4K31

    红帽架构师:为什么KubeEdge是2020年我最喜欢的开源项目?

    在定义边缘计算架构时,有一点是不变的:平台必须具有灵活性和可扩展性,以便在其上和核心数据中心部署智能应用程序。 KubeEdge(它向资源受限的环境提供容器编排)是2020年笔者最喜欢的开源项目。...KubeEdge是开源的、轻量级的、易于部署的、资源需求低的,并且提供你所需要的一切。 KubeEdge架构 KubeEdge于2018年在西雅图举办的KubeCon首次亮相。...2019年,它被接受为CNCF沙盒项目,这使其具有更高的知名度,并使其有望成为CNCF认可的成熟项目。 ? 简而言之,KubeEdge有两个主要的组成部分:Cloud和Edge。...这就是为什么笔者认为KubeEdge是使用边缘计算从移动技术产生的数据中获益的完美解决方案。 KubeEdge架构允许在边缘计算层实现自治,从而解决了网络延迟和速度问题。...这就是KubeEdge是笔者最喜欢的2020年项目的原因。还有更多的事情要做,笔者希望看到更多的社区贡献以推动更广泛的采用。它的未来令人感到兴奋,它将使我们能够使用可用的数据并将其获得更大的利益。

    1.1K10

    为什么人家的开源项目文档如此炫酷?原来用的是这款神器!

    之前有很多朋友问我,我的开源项目文档网站是用什么搭建的。其实是用Docsify搭建的,具体可以参考如何写出优雅的开源项目文档 。...最近发现使用VuePress可以搭建一个功能强大的文档网站,推荐给大家! VuePress简介 VuePress是Vue驱动的静态网站生成器。...这里选择的是vuepress-theme-vdoing,一款简洁高效的知识管理&博客主题,用来搭建文档网站绰绰有余。 学了技术老忘怎么破?用Vdoing搭建一个知识库试试!...,需要给目录和文件添加序号,比如下面的目录; 在此目录结构下,一级目录被称为专栏,二级目录为专栏内容,专栏之间是相互独立的,上面的目录结构将生成如下结构的侧边栏,同时也会生成右侧的大纲栏; 如果你还想给专栏添加个目录页的话...MIT License', // 博客版权信息,支持a标签 }, htmlModules // 插入hmtl(广告)模块 } 有时候我们想在每篇文章头部和底部加点推广信息,比如推荐下自己的公众号什么的

    1.2K20

    什么是开源开发模式? | 自由、闭源与开源的区别

    开源软件是指公开可用的计算机源代码,其特性允许任何人都可以查看、修改和分发开源代码。其中,开源社区使用分散和协作的方式进行开源软件的开发。...开源社区有着一套用于开发开源软件项目的过程,也被称为开源开发模型[6]。首先,该过程是由一个新想法开始的,可以是一个新项目、新特性或是对现有项目的提升。...开源项目可能会捐赠给开源基金会,这些非营利组织旨在支持新的开源项目,整合相关的开源项目,为项目提供业界的认可,通过治理促进开源项目的发展,并尽量减少潜在失败的风险。...一个很好的例子是2018年捐赠给Linux基金会的TARS项目。在LF和广大开源社区的支持下,TARS项目在 2020 年发展成为TARS 基金会。...无论你在哪个行业,无论你使用什么技术栈,这里能助你快速实现你的创意。

    1.4K20

    新手如何发布第一个Python项目开源包?

    第 0 步:获取项目许可证 在做其他事之前,由于你的项目要开源,因此应该有一个许可证。获取哪种许可证取决于项目包的使用方式。开源项目中一些常见许可证有 MIT 或 BSD。...通常情况下,项目库的根目录包含一个以项目名称命名的文件夹,项目的核心代码应该位于此文件夹中。在这个文件夹之外是运行和构建包(测试、文档等)所需的其他代码。...第 3 步:设置本地测试和检查测试覆盖率 此时还没有完成,你的项目还应该有单元测试。尽管有许多框架能帮助你做到,但一种简单的方法是使用 pytest。...第 5 步:创建一个合理的文档 现在你的项目已经测试过了,结构也很好了,是时候添加一个合理的文档。首先是要有一个好的 readme 文件,它会在你的 Github 项目库的根目录上显示。...首先要做的是在 GitHub 上创建你的第一个 release——这是为了在给定的时间点跟踪项目的状态,每次版本更改时都需要创建新的 release。

    1.1K20

    什么是开源的「第一性原理」?

    集市模式是一种并行、对等的扁平化开发结构,其参与者大多来自于互联网上的志愿者,结构松散,来去自由,没有建筑大教堂那样的安静和虔诚,就像是一个乱糟糟的集市。...因此,成熟的开源项目都会对提交的代码进行严格审查;开源基金会也会对加入的开源项目进行各个维度的评估,就是为了保证集市的健康运作。...短期内国内的开源环境和美国还有差距,随着开发者数量和质量的提升,中国开源力量的崛起是必然的。...PART FIVE 开源,下一站 正如数学中的公理推导,当我们用「第一性原理」框架对「开源」进行分析,得出的都是一些很基础的常识:开源是技术演进的必然结果;开源生态需要多方共建;在开源中利他就是利己;安全是开源发展必须要解决的问题...■ 腾源会是腾讯云成立的汇聚开源项目、开源爱好者、开源领导者的开放社区,致力于帮助开源项目健康成长、开源爱好者能交流协助、开源领导者能发挥领袖价值,让全球开源生态变得更加繁荣。

    43330

    可能是全网第一个使用RediSearch实战的项目

    实战项目地址newbeemall,集成RediSearch,代码开源已上传,支持的话可以点个star RediSearch 是基于 Redis 开发的支持二级索引、查询引擎和全文搜索的应用程序。...(ops/sec每秒操作数) [querying-results.png] 由此可见,新的RediSearch在性能上对比RediSearch较有优势,此外对中文项目来说对于中文的支持必不可少,RediSearch...也在官网文档特意列出了支持中文,基于frisoC语言开发的中文分词项目。...return "mall/search"; } 查看搜索结果中包含"小米"、"手机"两个单独分词 [image.png] 四、总结 通过以上实战项目,使用RediSearch是可以满足基本中文分词需求...最后贴一下实战项目地址newbeemall,集成RediSearch,代码开源已上传

    2.7K11

    我是如何通过开源项目月入 10 万的?

    01、前言 如果你是一名前端工程师或者像我一样的全站工程师,那么一定对 fullPage.js 这个开源项目不会感到陌生。...专访文章:http://bit.ly/2Zm0WlT 一个开源项目,竟能给开发者带来如此丰富的收入,作者是如何做到的呢? 我怀着好奇心,将整篇专访文章从头到尾看了一遍。...看完后我觉得,文章里面提到的一些建议,对开发者来说还是挺有帮助的。因此我决定,对这篇文章做下整理与翻译,把作者通过开源项目获利的整个过程分享给大家看看。希望各位在看完这篇文章后能有所启发。...几年前由于其开源了 JavaScript 组件 fullPage.js 而受到业界广泛关注。...值得一提的是,项目开源的前 3 年, 作者没有收取过一份钱。因为他觉得,当看到别人在使用他所创造出来的产品时,那种感觉不是钱所能衡量的,这也是作者更新项目的动力所在。

    99320
    领券