猴开发 | 博客

积极思考 活跃创造


  • 首页

  • 关于

  • 标签

  • 札记

  • 分类

  • 每日一题

  • 搜索

如何将 ASP.NET Core 项目部署到 Linux

作者 Sunwish | 发表于 2020-03-08 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

本文记录了如何为 Linux 服务器搭建 .Net Core 环境,并将 ASP.NET Core 网站项目部署到服务器上,并使用 Nginx 作为反向代理服务器,借助 Supervisor 实现项目的进程管理。

Title

阅读全文 »

【翻译】一个成功的 Git 分支模型

作者 Vincent Driessen | 发表于 2020-01-11 | 更新于 2022-08-02 | 评论数: | 阅读次数:

在这篇文章中,我将向你们介绍一个开发模型,早在差不多一年前,我已经将这个模型应用于我的多个项目,而事实证明,这个模型是非常成功的。其实这篇文章我早就打算写了,只是一直没有时间,直到现在。在这篇文章中我将不会谈及任何项目细节,分支策略和发布管理才是本文的核心内容。

Title

阅读全文 »

初探 Java 中的异步 Socket

作者 Sunwish | 发表于 2019-10-10 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

阻塞模式下的 Socket 编程往往是非常低效的,然而 Java 中的典型 Socket 编程核心采用的正是这种模式。好在 Java 提供了另一种解决方案,通过 Socket Channel 技术实现了非阻塞的异步 Socket 编程。本文将以一个简单的同步 Socket Demo 切入,引出并介绍 Java 中的 Socket Channel 并完成一个 Asynchronous Socket 案例。

文章头图

阅读全文 »

让你的数据成员远离 public/protected!

作者 Sunwish | 发表于 2019-09-28 | 更新于 2022-08-02 | 分类于 经验心得 | 评论数: | 阅读次数:

概述

在面向对象的程序设计语言中,类的设计对软件的整体架构而言影响非常深远。类的封装作为面向对象的三大基石之首,几乎所有的主流 OOP 程序设计语言都为其提供了诸如 private、protected 和 public 这三种访问限定修饰符,其目的无非是为了帮助类更方便地与外界进行一些必要的交流和沟通。可是,对于类的数据成员而言,一旦你为其声明了 public/protected 的访问限定,那么这一举措对你的中大型程序构建而言将是灾难性的。

一、数据的安全性引人忧虑

要深刻理解为什么 public/protected 如何可怕,就要首先明白封装的意义何在。

在曾经主流的面向过程的程序开发当中,代码的复用是函数级的,而在每一个函数当中所实行的都是过程式编码,这也就意味着在主函数当中的函数调用式编程亦是过程式的。在作用域的约束之下,为了使得不同的函数域都能够访问同一个变量,达到函数职能效益的最大化,往往将其声明为全局变量。这直接导致了任何的函数都将能够对其进行读和写的操作,对于数据的安全性而言这简直是当头一棒!在小型程序开发者的眼里,这点风险根本不足为惧,可是对于大型程序开发者来说,变量值的修改将完全不再受到开发者的掌控,值异常现象将有可能由庞大代码量中的任何一个操作该变量的默默无闻的小角落中产生。如此一来,大型程序的开发与维护变得举步维艰。

阅读全文 »

VSCode + xUnit 编写 C# 单元测试

作者 Sunwish | 发表于 2019-09-26 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

什么是单元测试?为什么要写单元测试?如何写一个单元测试?实话实说,写单元测试是一件挺麻烦的事情,却又是你在软件开发的成长路上难以回避的一个问题。我个人在以前也并不喜欢单元测试,不过现在我的态度有所改观了。如果本文所写的内容可以让你理解单元测试的重要性,并且说服你在今后也开始尝试编写单元测试的话,那么这篇博文就是成功的。

Title

阅读全文 »

Bcdedit 删除 Boot Menu 中的多余启动引导

作者 Sunwish | 发表于 2019-08-27 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

在过去一篇博文《如何科学卸载 Ubuntu?》中曾提到 Ubuntu 启动引导的删除,其中先后通过 EasyUEFI 与 diskpart 工具删除了 Ubuntu 的启动引导条目以及 Ubuntu 的 EFI 分区,但是仍有可能出现启动引导的残留,最直接的表现就是在开机的时候依旧没有正常进入系统而是进入了 GRUB 界面。本文以清理 Ubuntu 启动引导残留为例,演示如何借助 Bcdedit 移除固件应用程序,进而彻底清理启动引导残留,同理亦可以移除多系统下不需要的启动引导。

Title

阅读全文 »

如何科学卸载 Ubuntu?

作者 Sunwish | 发表于 2019-08-15 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

本篇记录 Win10+Ubuntu 双系统下卸载 Ubuntu 的全步骤。由于磁盘空间告急,而且 Ubuntu 在近期内并没有使用需求,考虑到之前装的 Ubuntu 遇到的显卡驱动问题始终得不到解决,因此决定暂时将 Ubuntu 卸载以空出磁盘空间给 Win10 使用,下次需要 Ubuntu 时也方便重新安装,也期待下次安装时能够解决显卡驱动问题。

Title

阅读全文 »

由C++虚析构函数风险性产生的思考

作者 Sunwish | 发表于 2019-05-18 | 更新于 2022-08-02 | 分类于 沿途简记 | 评论数: | 阅读次数:

概述

virtual 关键字作为 C++ 多态特性的表现载体,在多态 base class 的析构当中对内存泄漏的避免具有相当重要的意义,但是与此同时却也存在一些难以窥探到的风险性,如果在开发过程中对 virtual 的使用稍有疏忽就很有可能走上弯路,甚至造成一些不必要的麻烦。这些麻烦轻则导致程序运行质量的降低,耗费了更多的内存,重则造成更加严重的问题,产生内存泄漏、影响程序的移植性。

Title

阅读全文 »

深度学习(五)激活函数的选择 & 浅层神经网络的梯度下降

作者 Sunwish | 发表于 2019-03-24 | 更新于 2022-08-02 | 分类于 学习笔记 , 深度学习 | 评论数: | 阅读次数:

概述

本篇中你将了解几种常见的激活函数,并看到在浅层神经网络中向后传播及梯度下降是如何进行的。

Title

阅读全文 »

深度学习(四)浅层神经网络及其向量化

作者 Sunwish | 发表于 2019-03-23 | 更新于 2022-08-02 | 分类于 学习笔记 , 深度学习 | 评论数: | 阅读次数:

概述

本篇简要介绍浅层神经网络,并给出其向量化形式。

Title

阅读全文 »
123…6

Sunwish

个人项目:
1. Alterful · 键盘增强:
https://alterful.com/
2. Easecurve · 缓动引擎:
https://easecurve.com/
3. AQTS · 自动量化交易系统

51 日志
12 分类
34 标签
友情链接
  • Sunwish
  • Alterful
  • Easecurve
© 2024 Sunwish
博客全站共 108.6k 字
|
赣ICP备2022001064号-2
本站访客人次 | 总阅读量:
0%