我的创业之路:我为什么选择 Angular 作为前端的开发框架?
我是一名后端开发人员,在上班时我的主要精力集中在搜索和推荐系统的开发和设计工作上,我比较熟悉的语言包括java、golang和python。对于前端技术中typescript、dom、webpack等流行的框架和工具也懂一些。目前,已成为一名自由职业者,主要的精力是开发打字侠这款产品。
那么,为什么 Vue 和 React 在国内这么火的情况下,我选择了Angular 作为打字侠的前端框架呢?
主要原因是我被Angular 的设计理念和易用性深深的折服了。具体理由包括如下4点:
- Angular 基于组件和模块化的设计思想,能够拼装成非常复杂的系统;
- Angular 中依赖注入和服务化的设计思想,和后端spring中的mvc思想非常接近;
- Angular 是 google 的作品,背后有一整套工具和自动化流程的支撑,例如,angular cli、Angular Material UI等;
- 干净整洁的技术文档。
接下来,我简单介绍一下为什么要开发打字侠这款产品?
离职后,我没有资金也没有团队,所以只能选择相对简单的产品。那么,打字网站在我看来即有一定的用户群体,同时功能逻辑也相对简单,我一个人应该能够cover住。所以,我便急匆匆的上路了。目前,打字侠已上线接近1个月的时间,最大的问题是运营推广和盈利能力太差。
最后,我简单介绍一下打字侠这款产品,打字侠是一款在线打字练习网站,目前已包含键盘指法练习、打字速度测试、经典打字游戏等多个产品,其主要特点是合理的课程设计和直观的键盘指法提示。网址:https://www.hellotyping.com
作为一名自由的独立开发者,有时候也会感到孤独,欢迎广大的朋友们给出建议和交流。
相关文章:

我的创业之路:我为什么选择 Angular 作为前端的开发框架?
我是一名后端开发人员,在上班时我的主要精力集中在搜索和推荐系统的开发和设计工作上,我比较熟悉的语言包括java、golang和python。对于前端技术中typescript、dom、webpack等流行的框架和工具也懂一些。目前,已成为一名自由职业者࿰…...

阿里云服务器ECS是什么?云服务器详细介绍
阿里云服务器ECS英文全程Elastic Compute Service,云服务器ECS是一种安全可靠、弹性可伸缩的云计算服务,阿里云提供多种云服务器ECS实例规格,如经济型e实例、通用算力型u1、ECS计算型c7、通用型g7、GPU实例等,阿里云服务器网分享阿…...

深入了解快速排序:原理、性能分析与 Java 实现
快速排序(Quick Sort)是一种经典的、高效的排序算法,被广泛应用于计算机科学和软件开发领域。本文将深入探讨快速排序的工作原理、步骤以及其在不同情况下的性能表现。 什么是快速排序? 快速排序是一种基于分治策略的排序算法&am…...
[晕事]今天做了件晕事22;寻找99-sysctl.conf; systemd
这个文件,使用ls命令看不出来是一个链接。 然后满世界的找这个文件怎么来的,后来发现是systemd里的一个文件。 从systemd的源文件里也没找到相关的文件信息。 最后把这个rpm安装包下载下来,才找到这个文件原来是一个链接 #ll /etc/sysctl.d/9…...
2578. 最小和分割
给你一个正整数 num ,请你将它分割成两个非负整数 num1 和 num2 ,满足: num1 和 num2 直接连起来,得到 num 各数位的一个排列。 换句话说,num1 和 num2 中所有数字出现的次数之和等于 num 中所有数字出现的次数。num1…...

Mybatis mapper报错:Class not found: org.jboss.vfs.VFS
报错 Logging initialized using class org.apache.ibatis.logging.stdout.StdOutImpl adapter. Class not found: org.jboss.vfs.VFS JBoss 6 VFS API is not available in this environment. Class not found: org.jboss.vfs.VirtualFile VFS implementation org.apache.iba…...

ARM作业1
三盏灯流水 代码 .text .global _start _start: 1.设置GPIOE寄存器的时钟使能 RCC_MP_AHB4ENSETR[4]->1 0x50000a28 LDR R0,0X50000A28 LDR R1,[R0] 从r0为起始地址的4字节数据取出放在R1 ORR R1,R1,#(0x3<<4) 第4位设置为1 STR R1,[R0] 写回2.设置PE10管…...
leetcode 502. IPO
假设 力扣(LeetCode)即将开始 IPO 。为了以更高的价格将股票卖给风险投资公司,力扣 希望在 IPO 之前开展一些项目以增加其资本。 由于资源有限,它只能在 IPO 之前完成最多 k 个不同的项目。帮助 力扣 设计完成最多 k 个不同项目后…...
[软考中级]软件设计师-计算机网络
网络设备 物理层 物理层不能隔离广播域和冲突域 中继器,集线器 集线器可看成是特殊的多路中继器 数据链路层 可以隔离冲突域不能隔离广播域 网桥,交换机 交换机是多端口的网桥 网络层 可以隔离广播域和冲突域 路由器 应用层 网关 协议簇 …...

Linux搭建我的世界MC服务器 【Minecraft外网联机教程】
目录 前言 1. 安装JAVA 2. MCSManager安装 3.局域网访问MCSM 4.创建我的世界服务器 5.局域网联机测试 6.安装cpolar内网穿透 7. 配置公网访问地址 8.远程联机测试 9. 配置固定远程联机端口地址 9.1 保留一个固定tcp地址 9.2 配置固定公网TCP地址 9.3 使用固定公网…...
APISIX 中ETCD 的问题
1. 问题1 : Error: client: etcd cluster is unavailable or misconfigured; error #0: client: endpoint http://etcd:2379 exceeded header timeout error #0: client: endpoint http://etcd:2379 exceeded header timeout 修改APISIX config ETCD_ADVERTISE_CL…...

SSH版本信息可被获取
漏洞描述 Name SSH版本信息可被获取 Description SSH服务允许远程攻击者获得ssh的具体信息,如版本号等等。这可能为攻击者发动进一步攻击提供帮助。 CVE No. CVE-1999-0634 分析结果 该问题不属于漏洞,不存在安全风险。SSH协议是一种安全协议&am…...

android 修改输出apk的包名
一,打包方式使用IDE菜单选项 二、在app级别的build.gradle下配置: static def releaseTime() {return new Date().format("yyyyMMdd.kkmm", TimeZone.getTimeZone("GMT8")) }android.applicationVariants.all { variant ->print…...

uni-app:文本超出部分用省略号表示
效果 前 后 核心代码 white-space: nowrap; /* 强制不换行 */ text-overflow: ellipsis; /* 超过部分省略号代替 */ overflow: hidden; /* 必须同时设置overflow:hidden才能生效 */ 完整代码 <template><view><view class"all_style"><view c…...

轻松实现视频、音频、文案批量合并,享受批量剪辑的便捷
在日常生活中,我们经常会需要将多个视频、音频和文案进行合并剪辑,以制作出符合我们需求的短视频。然而,这个过程通常需要花费大量的时间和精力。幸运的是,现在有一款名为“固乔智剪软件”的工具可以帮助我们轻松完成这个任务。 首…...
Spring Boot、Nacos配置文件的优先级
在标准的 SpringBoot 应用中,本地配置加载顺序如下: 本地 bootstrap 配置,先于 application 配置加载。不带 profile 的配置,先于带 profile 的配置加载。xxx.yaml 先于 xxx.properties 加载。本地配置先于 nacos 配置中心加载。…...
GO脚本-模拟鼠标键盘
01GetCoordinate 获取坐标 package mainimport ("github.com/go-vgo/robotgo" )func main() {// 获取当前鼠标所在的位置x, y : robotgo.GetMousePos()println(x:, x, y:, y)}02GetColor 获取坐标颜色 package mainimport ("fmt&quo…...
Ubuntu设置SSH
在Ubuntu上通过SSH服务远程连接其他机器 首先通过以下命令判断是否安装SSH服务: ssh localhost如果出现 ssh: connect to host localhost port 22: Connection refused 则表示还未安装SSH。 通过以下命令安装SSH: sudo apt update sudo apt install…...

创作2周年?浅记一下~
前言: 最近确实有点缺乏去更新博客的动力,一晃两年过去了,其实也是我新入职公司的两年,两年虽然不长,但是确实发生了太多事情值得去记录下来... 机缘 说是机缘也不是算是,第一次写博客是刚好在CSDN里面查资…...
MATLAB算法实战应用案例精讲-【优化算法】光学显微镜算法(OMA)(附MATLAB代码实现)
前言 光学显微镜算法(Optical Microscope Algorithm, OMA)从光学显微镜对目标物体的放大能力中获得灵感,使用肉眼进行初始观察,并通过物镜和目镜模拟放大过程。通过两个实验验证了OMA的性能,该算法具有用户友好且不需要初始化参数的特点:(1)在50个Benchmark函数上,将OMA与…...

铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...

《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...