实现财务自由之路_程序员的个人财富课

实现财务自由之路_程序员的个人财富课给自己设定一个目标

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、前言

  • 我们那个年代上大学的时候有个网站叫 校内网,相信那个年代的人都知道,期末复习功课的时候总是要刷一下,就像现在的抖音一样,有毒!最近我再去看的时候,发现密码已经完全忘记了,怎么试都试不出来。后来(BGM:我总算学会了,如何去爱!可惜你,早已远去,消失在人海),我终于意识到,我失去的又岂止是一个密码,更重要的,是我逝去的青春!
  • 我们总是在想,当初的我们如果能够这样那样就好了,但是,你有没有想一下,如果现在不动起来,到了未来,你同样还是会后悔!所以:

与其后悔当初,不如把握当下

  • 给自己树立一个目标是非常重要的,有目标才会有方向,有目标才会有动力,有目标才会有人生的意义;
  • 虽然我现在算得上衣食无忧,但是离财务自由还有很漫长的路要走,然而我不会放弃,因为这是我的最终目标,路漫漫其修远兮,吾将上下而穷索!

这里用到了一个穷字,乃 ‘穷其一生去求索’ 的意思,当然,也代表了我的真实写照:穷!

  • 接下来我就给大家分享一下,我在朝着这个目标努力的路上是如何前行的。
  • 当然,我不需要太多人点赞,你自己偷偷收藏就好,因为我不想太多人知道!毕竟有个词叫 ‘闷声发大财’ !

二、如何制定目标

1、目标蓝图

  • 既然已经很明确了,目标是财务自由,那么我们就来把这个蓝图规划一下:

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

贫穷的我

财务自由

  • 为了让这个事情看起来更加可行,我们需要把一些事情量化,比如赚多少钱以后才能称得上财务自由,估计算10亿吧,10个亿离财务自由应该也只剩临门一脚了,至少我是这么认为的,我一直认同一句话:

你永远赚不到超出你认知范围外的钱,就算赚到了,也往往会凭实力亏掉;
你所赚的每一分钱,都是你对这个世界认知的变现;

10亿人民币暂时已经超出了我的认知,再往上我无法想象,所以我们可以把蓝图更加细化一点,如下:

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

贫穷的我

拥有10亿人民币

财务自由

  • 当然,我们还可以有其它途径,比如拥有 2000 套房,每套500万,其实也算10亿资产了,而且余生基本就靠收租就行了,还得雇人帮你收,当然理想是美好的,现实是残酷的。啊呸!怎么能说泄气的话,蓝图加上!

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

贫穷的我

拥有10亿人民币

拥有1000套房

财务自由

  • 但是看起来还是那么的不靠谱,因为 这两个目标对于 ‘贫穷的我’ 来说,并不是那么容易达到的,我们还需要再理出一些中间环节。
  • 所以在大目标面前,我们需要制定一些小目标,比如 1个亿,1000万,100块 等等;

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

贫穷的我

拥有10万人民币

拥有100万人民币

拥有1000万人民币

拥有1亿人民币

拥有10亿人民币

拥有1000套房

财务自由

  • 这里有个问题,我们只订立了要赚多少钱,然而这是一个虚无缥缈的目标,所以我们需要把它具象化。
  • 因为知识就是金钱,所以我们首先要扩充我们的知识体系,毕竟是 程序员的财务自由之路,技术栈才是我们最应该关心的;
  • 于是,我们找到了我们的另一条支线,然后你会发现,随着你的技术栈的提升,财务自由是水到渠成的事情;

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

贫穷的我

拥有10万人民币

成为初级程序员

拥有100万人民币

成为中级程序员

拥有1000万人民币

成为高级程序员

拥有1亿人民币

成为资深程序员

拥有10亿人民币

成为架构师

拥有1000套房

成为首席架构师

财务自由

2、技术栈

栈是计算机中的一种数据结构,线性表的一种,特点是先进后出;常用在函数传参的实现中;

  • 举个例子,你在学习乘法之前,如果没有学习过加法,是不是不好理解,但是如果有了加法的基础,是不是会好理解很多;如图所示,
  • 就是一个乘法转换为加法的例子;

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

依赖于

依赖于

依赖于

依赖于

乘法

加法

3X2

3+3

3X4

3X2+3X2

3+3+3+3

  • 同样道理,在我们学习某一个知识的时候,一定会有一些知识盲区,这个时候就需要你去互联网上找各种资料了,对于程序员来说,通过各种经验和实践解决问题的能力才是你的 核心竞争力 。有了核心竞争力,我们画的蓝图才能得以实现!
  • 但是我们的知识体系并不是简单的线性结构,它是一个交错复杂的具有强依赖关系的图结构;所以,与其说是技术栈,不如说是技术图;
  • 如图所示,当你接触到一个新的概念,叫三角函数 y = s i n ( x ) y = sin(x) y=sin(x) 的时候,你可能需要以下备用知识作铺垫,都是一些成年人一看就懂的概念,但是设想一下,如果你刚进入一个新的领域(比如 程序领域),扑面而来的技术面前可能你只是一个小婴儿,这个时候就像婴儿学习一样,必须从最基础的加法开始;

:root{--mermaid-font-family:"trebuchet ms", verdana, arial;}

三角函数

函数

等式

交换律

结合律

乘法

除法

减法

加法

未知数

三角形

长度

单位

3、反向激励

  • 时刻激励自己,如果没有动力,那么尝试来看看下面这段话;
  • 如果你不去奋斗,你的代价是什么?
  • 有人会说,那就穷一点呗,但是我过得舒服啊,我穷我快乐;

的确如此

  • 如果你认为教育的成本太高,那你就看看无知的代价;

  • 如果你不去努力奋斗,那你就尝试看看你为贫穷付出的代价,别人能用钱去解决的问题,你将不得不用时间、健康、尊严、甚至生命去解决;

  • 当我们的父母逐渐老去,我们还没有出人头地的时候,你才会发现什么叫无助!大多数人憧憬希望,但是不会为了希望去努力;大多数人讨厌拼命,但是会为了攥在手里的东西去拼命;

  • 所以,为了目标奋斗吧,少年!

三、C++ 入门

1、C++ 是世界上最好的语言

  • 前面说了这么多,接下来才是我要说的正题;
  • C++ 是世界上最好的语言!所以我想要把它推荐给刚步入大学的少年,甚至是想转行学程序的中年朋友们,我想说的是学好C++走遍天下都不怕,那么如何才能让你快速入门 C++ 呢?

答案只有一个,就是 天道酬勤

  • 任何事情都是熟能生巧的,需要不断地练习,反复的尝试;

2、编码能力

  • 我们是程序员,程序员是有另一种物种,我们超出三界之外,不在五行之中,能够实现各种各样千奇百怪的功能,只要你能想到,我就能给你实现出来;
  • 那么如何锻炼我们的编码能力成为了重中之重,推荐一个 HDU Online Judge(杭电在线评测系统),你可以去上面刷水题,上面的水题,如滔滔江水,连绵不绝,又如黄河泛滥,一发不可收拾!至少我当年刷题的时候,进入了一种境界:

水能三日不饮,饭可七日不食,然题不可一日不刷

  • 因为那时候上大学,目的很纯粹,它有个排名系统,每天就盼着排名一点一点往前走,所谓有竞争才有进步;
  • 有时候真的很怀念大学的日子,逃课去机房敲代码刷题,那是我逝去的青春!
  • 做任何事情都要有仪式感,让自己产生激情,才能继续往下走;

3、算法

程 序 = 数 据 结 构 + 算 法 程序 = 数据结构 + 算法 =+

  • 很多人觉得算法是一个遥不可及的东西,其实并没有,只要按照好的习惯,遇到不懂就搞懂,逐渐强化自身的知识体系,总有一天算法会像你学习 1 + 1 时那么简单;

杠精:我小时候学 1 + 1 的时候花了一年;
作者:吃我一拳!杠精!

  • 学到的要教人,赚到的要给人,帮助别人成长的同时,自己也在成长,多回复别人提出的提问,那些问题可能是你未知的领域,这时候才是你学习的最佳时机;这就是强者愈强的道理;有使自己变强的法则在,谁都无法超越,相信自己!
  • 所以,如果有新手程序员遇到什么解决不了的问题,可以给这篇文章底下留言,在下必定竭尽所能,倾我所有,知无不言,言无不尽!

4、小试牛刀

1)标准输入输出

HDU 2003 求绝对值

  • 浮点数求绝对值函数 fabs 的应用
#include <iostream>
#include <cmath>
using namespace std;
double R;
int main() { 
   
	while (scanf("%lf", &R) != EOF) { 
   
		printf("%.2lf\n", fabs(R));
	}
	return 0;
}

2)ASCII 基础知识

HDU 2026 首字母变大写

  • ASCII 码的基础应用,大小写字母转换
#include <iostream>
using namespace std;
char str[200];
bool isspace(char c) { 
   
	return c == ' ' || c == '\t';
}
int main() { 
   
	int i;
	while (gets(str)) { 
   
		bool space = true;
		for (i = 0; str[i]; ++i) { 
   
			if (!isspace(str[i])) { 
   
				if (space) { 
   
					space = false;
					if (str[i] >= 'a' && str[i] <= 'z') { 
   
						str[i] = str[i] - 'a' + 'A';
					}
				}
			}else { 
   
				space = true;
			}
		}
		puts(str);
	}
}

3)STL 排序函数 sort 的 应用

HDU 2000 ASCII码排序

  • STL sort 排序接口的简单应用;
#include <iostream>
#include <algorithm>
using namespace std;
char ch[10];
int main() { 
   
	while (scanf("%s", ch) != EOF) { 
   
		sort(ch, ch + 3);
		printf("%c %c %c\n", ch[0], ch[1], ch[2]);
	}
	return 0;
}

4)简单字符串处理

HDU 2081 手机短号

  • 遍历一个字符串的字符并进行输出
#include <iostream>
using namespace std;
char str[10000];
int main() { 
   
	int t, i;
	scanf("%d", &t);
	while (t--) { 
   
		scanf("%s", str);
		printf("6");
		for (i = 6; i < 11; ++i) { 
   
			printf("%c", str[i]);
		}
		puts("");
	}
	return 0;
}

5)简单进制转换

HDU 2031 进制转换

  • 计算机数字进制转换的应用;取模,迭代除进制,逆序输出,注意考虑 负数、0 的情况;
#include <iostream>
#include <cstring>
using namespace std;
int val, R;
int sta[100];
void Print(int v) { 
   
	if (v >= 10 && v <= 16) { 
   
		printf("%c", v - 10 + 'A');
	}
	else { 
   
		printf("%d", v);
	}
}
int main() { 
   
	int i;
	while (scanf("%d %d", &val, &R) != EOF) { 
   
		if (val == 0) { 
   
			puts("0");
			continue;
		}
		else if (val < 0) { 
   
			val = -val;
			printf("-");
		}
		sta[0] = 0;
		while (val) { 
   
			sta[++sta[0]] = val % R;
			val /= R;
		}
		for (i = sta[0]; i > 0; --i) { 
   
			Print(sta[i]);
		}
		puts("");
	}

	return 0;
}

6)利用字符绘图

HDU 2052 Picture

  • 简单的利用字符进行控制台输出;
#include <iostream>
using namespace std;
int main() { 
   
	int n, m;
	int i, j;
	while (scanf("%d %d", &n, &m) != EOF) { 
   
		printf("+");
		for (i = 0; i < n; ++i) printf("-");
		printf("+\n");
		for (i = 0; i < m; ++i) { 
   
			printf("|");
			for (j = 0; j < n; ++j) printf(" ");
			printf("|\n");
		}
		printf("+");
		for (i = 0; i < n; ++i) printf("-");
		printf("+\n");
		puts("");
	}

	return 0;
}

四、结尾彩蛋

1、巧用位运算

如何用一句话判断这个数是不是2的幂?

	x & (x - 1);

2、结语

  • 没什么好说的 ~
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/184915.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 对象转json字符串字段丢失_excel某个对象程序库丢失

    对象转json字符串字段丢失_excel某个对象程序库丢失 在fastjson下将对象转json时会丢失部分属性的情况,出现这种情况的问题原因是由于属性命名不符合规范导致,比如:uId,一个字母后面紧跟着一个大写字母,导致反射get/set方法时会出现连续两个大写字母(getUId/setUId)。解决该问题的方法时在属性上加上注解:@JSONField(name="uId"),就可以解决该问题。或者是属性名serviceDeadline在get/…

  • Ubuntu系统设置开机自动运行程序

    Ubuntu系统设置开机自动运行程序

  • 加密的TCP通讯全过程

    加密的TCP通讯全过程转自:http://blog.csdn.net/laotse/article/details/5910378首先3个概念,1、不可逆加密2、可逆对称加密3、可逆非对称加密1、不可逆加密,大家最熟悉的一种,md5sha1就是,加密后就不能解密,只能用于存储密码和校验文件变动,不能用于网络通讯。2、可逆对称加密,用一个钥匙把内容加密,只要有这个钥匙的人就可以解密,就像登录wi

  • vim查看特殊字符_js字符串替换特殊字符

    vim查看特殊字符_js字符串替换特殊字符转载来自:http://bbs.chinaunix.net/thread-4167320-1-1.html1.搜索特殊字符要加转义字符"\"eg:搜索17/Jan/201910:20:53vim文件,然后/,然后输入如下:17\/Jan\/2019\10:20:53或者17\/Jan\/2019\s10:20:53 …

  • webpack异步加载_webpack配置按需加载

    webpack异步加载_webpack配置按需加载异步一定有一个回调函数 1、实现js和html分离 2、js脚本中执行postMessage,回调函数才会生效 3、回调函数的参数为一个对象,对象的data属性是js脚本中postMessage的参数 使用步骤 new对象=newWorker(‘异步执行的js文件路径’); 对象.onmessage=function(回调对象){通过对象.data调用postMessage返…

    2022年10月22日
  • 阿里巴巴代码规范插件 idea(阿里数据库开发规范最新)

    https://github.com/alibaba/p3c1、下载离线安装插件https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines2.Settings>>Plugins>>Installpluginfromdisk…,selectthedow…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号