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

我的老婆失业了,周围同事也在不断被裁。。。

来源:知乎 作者:黑石 今年 2 月,我的老婆失业了。好在是被裁的,有些补偿。裁的是整个部门,她一把拉扯大的团队十几个人全部被裁。刚开始他们拿到赔偿以后还欢呼雀跃,天天聚会,天天嗨。...到现在过去两个多月了,没一个找到工作的。我已经感受到了一股鸡蛋被煎糊的焦虑感,空气中弥漫着「我是谁,我要去哪?」的哲学气息。...我意识到这件事有点严重了。 渐渐的,我的身边朋友陆续传出被裁的消息。我们组建了一个「失业救助中心」的群,群里 10 几个人,一半是失业在家的。更巧的是,失业的都是角色为老婆的群体。...在大厂,员工学历的比例越来越向着 985 211 的区间去了。...我老婆已经开始有点 PTSD 了,她开始报复性消费了,一天我要收 7 个快递,上个月一共收了 78 个快递。她那点赔偿已经被花的差不多了。她给我一种老娘不活了的感觉。

40430

C#在中国:一门被低估的编程语言?

C#:一门被低估的编程语言? 在中国的编程语言生态中,C#似乎总是被笼罩在Java和C++的阴影之下。尽管这门语言拥有出色的性能和优雅的语法,它在中国的流行度却远不如前两者。...本文将探讨C#在中国不流行的原因,分析其就业市场,并给出学习C#的建议。 C#语言概述:我的编程之旅 我与C#的结缘始于编写桌面应用程序。...特别是在移动互联网的浪潮中,Windows Phone的失败让C#错失了在移动开发领域的先机。 .NET平台的发展历程:微软的自我革新 微软在.NET平台的发展上经历了多次重大的转型。...结语:C#的未来展望 C#作为一门成熟的编程语言,无论在技术特性还是应用领域上,都有着不可小觑的实力。...尽管在中国,C#面临着一些挑战,但随着技术的发展和市场的变化,C#仍然有机会在特定领域焕发新的活力。对于C#程序员而言,关键在于不断提升自己的技术能力,适应市场的变化,寻找属于自己的发展机会。

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

    我是这样在 React 中实践 TDD 编程的

    在Redux中编写测试听起来肯定有悖直觉。如果你使用了Redux,它可能看起来更加复杂。 然而,在添加功能之前编写测试有助于编写更好的代码,因为你预先考虑了将使用的设计模式、体系结构和变量的名称。...编写测试 这是最有趣的部分。让我们开始TDD。 首先,让我们创建并配置存储。在src目录中,创建一个名为index.js的新目录。在这个文件中,初始化存储。...Redux reducer逻辑和动作的集合,通常定义在单个文件中。...slice的默认状态应该是一个空数组,毕竟,我们处理的是用户。 让我们通过编写一个测试: 在src/store中创建一个名为slices的新目录。...在slice目录中,创建一个名为user.js的文件。

    1.9K30

    C语言编程中复杂的循环结构,你被循环晕了吗?

    通常,语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推。 编程语言提供各种控制结构,允许更复杂的执行路径。 循环语句允许我们多次执行语句或语句组。...下面给出的是大多数编程语言中循环语句的一般形式 C编程语言提供以下类型的循环来处理循环要求。 1. while循环 2. For循环 3. Do...while循环 4....嵌套循环 而在C语言编程循环,只要给定的条件为真,重复执行一个目标语句。...语法 C编程语言中while循环的语法是 - while(condition) { statement(s); } 这里,语句可以是单个语句或语句块。所述条件可以是任何表达,和真正的是任何非零值。...(其他死循环不做讲解,自行补充) 我有一个微信公众号,经常会分享一些C语言/C++技术相关的干货;如果你喜欢我的分享,可以用微信搜索“C语言学习部落”关注,欢迎大家加入千人交流答疑裙:627+012+464

    1.6K20

    委托与线程在C#编程中的应用及选择

    图片委托是一种表示对具有特定参数列表和返回类型的方法的引用的类型。可以使用委托将方法作为参数传递给其他方法,或者异步地调用方法。线程是一个执行单元,它可以与进程中的其他线程并发运行。...可以使用委托在不同的线程上调用方法,要么使用委托的 BeginInvoke 和 EndInvoke 方法,要么使用 ThreadPool 或 Task 类。...在爬虫程序中,哪一种更合适取决于具体的设计和需求。一般来说,使用委托与 ThreadPool 或 Task 比创建和管理自己的线程更高效和方便。...但是,如果想要更多地控制线程的优先级、身份或生命周期,可能需要使用线程。也可能想要考虑使用 C# 5 或更高版本中的 async/await 关键字,它们使异步编程变得更容易和清晰。...采集过程是异步的,使用 async/await 关键字实现,同时使用动态转发代理IP提高采集效率。在处理采集结果时,代码会等待所有异步采集任务完成后再进行处理,以保证异步任务全部完成。

    1.2K30

    C语言位域解析及在嵌入式编程中的应用

    笔者能力有限,如文中出现错误的地方,还请各位朋友能给我指出来,我将不胜感激,谢谢~ 位域的概念 位域(或者也能称之为位段,英文表达是 Bit field)是一种数据结构,可以把数据以位元的形式紧凑的存储...: -1,-3 输出结果并不是我们想要的,究其原因,实际上是因为 BF.a ,BF.b 都是有符号的,那么自然也就有符号位的存在,而最高位为 1 代表负数,负数又是以补码的形式存储在计算机中的,所以也就有了上述的结果...,大端模式和小端模式的处理器会对下面的结构体位域产生不一样的存储方式,这里比较简单,如果对这个问题不清楚的朋友可以看笔者的这篇文章《union 的概念及在嵌入式编程中的应用》。...最容易另人想到的就是使用结构体位域定义标志位,由于我们在裸机开发的过程中,没有信号量,事件等机制,通常会定义一些范围只存在于 0~1 的开关量,而在没有使用位域之前,最小的变量类型都是 1 个字节,使用结构体位域将能够根据取值范围定义该变量的位数...bit-field-in-c/ 您的阅读是对我最大的鼓励,您的建议是对我最大的提升,欢迎点击下方图片进入小程序进行评论,或者添加笔者微信相互交流,微信二维码在公众号底部进行获取 ?

    1.3K10

    由表单验证说起,关于在C#中尝试链式编程的实践

    在web开发中必不可少的会遇到表单验证的问题,为避免数据在写入到数据库时出现异常,一般比较安全的做法是前端会先做一次验证,通过后把数据提交到后端再验证一次,因为仅仅靠前端验证是不安全的,有太多的http...架构师allen说可以试一下链式编程,也就是类似Jquery的xxxx.attr().css().html().show()这样,看起来还不错的样子,那就干吧。...其实C#里也有类似的用法,比如Linq里面的xxxx.Where().OrderBy().Select()这种,但是这种实际上每次返回的都是不同的对象,然后执行对象里的方法,这并不适合我的需求,因为我执行的验证方法肯定都是同一个...不知所措的时候,断点跟了一下出错的代码,发现报错的地方是在执行if (!...缺点 某次验证失败不能中断后面的验证,多执行了不必要的代码,这点用if可以避免。 总结 完了以后去网上找了一些C#链式编程的问题,有支持的也有反对的,反对的人说代码可读性不太好、简单的问题复杂化等等。

    1.2K30

    C语言与汇编的嵌入式编程:main中模拟函数的调用(两数交换)

    编写一个两数交换函数swap,具体代码如下: #include void swap(int *p1,int *p2) { int temp; temp = *p1;...push edx call printf add esp,12 } } 现在需要将swap也转化为汇编,并放入main函数中,...具体思路如下: 1、先对swap函数反汇编,并删除ret指令, 注明:swap函数大致处理过程为:把下个地址压入堆栈,然后参数入栈,然后把所有寄存器压入堆栈,分配空间,空间清C然后变量赋值开始程序然后做堆栈平衡清理堆栈...所以删除swap:和ret后,main里面不再是一个完整的函数,但是又保留了该swap函数的基本功能(即,把下个地址压入堆栈,然后参数入栈,然后把所有寄存器压入堆栈,分配空间,空间清C然后变量赋值开始程序然后做堆栈平衡清理堆栈...2、将1中的汇编代码替换掉call swap, #include main(){ int a=0; int b=0; char *str1="a=%d,b=%

    98740

    在C#中,如何以编程的方式设置 Excel 单元格样式

    前言 在C#开发中,处理Excel文件是一项常见的任务。...文本颜色 文本颜色是基本的外观设置之一,有助于处理多种数据情况,例如 突出显示数据中的重要内容,例如温度数值,随着温度升高而变红 区分部门或区域销售等数据 通过提高注意力水平来促进信息回忆,等等 在 Excel...RichText 控件 GcExcel 支持在单元格中应用富文本格式。富文本格式允许使用不同的颜色、字体、效果(粗体、下划线、双下划线、删除线、下标、上标)等在单元格中设置文本样式。...在 Excel 中,若要在单元格中包含富文本,请在编辑模式下输入单元格,然后选择文本的一部分以应用单独的格式,如下所示: 使用 GcExcel,可以使用 IRichText 和 ITextRun 对象配置...条件格式 在工作表中,Excel 允许用户对单个或一系列单元格创建条件格式规则,使单元格、行、列或整个工作表中的数据自动应用不同的格式。

    37710

    C语言优先级在嵌入式编程中的重要性

    C语言优先级在嵌入式编程中的重要性 最近在弄PIC的一个小项目,之前是前一个同事在原有程序的基础上经行了代码的优化,同时添加了一点新的功能,由于PIC单片机的容量还是相对较小,所以不得不把众多的ADC转换的函数整合到一个函数里...在程序里需要用到C语言里的位运算,PIC16F87x单片机的AD转换默认是10位的,而pic单片机是8位单片机,所以需要两个8位寄存器来存储AD转换的值,并通过ADFM位来设置其左对齐还是右对齐,然后在程序里读取...int类型的,可是之前的同时是这样写的:((ADRESH&0x03)在C语言里“+”的运算符比“的优先级高,所以他会先进行ADRESH&0x03,而后在...8+ADRESL,最后在(ADRESH&0x03)的完全不同了,从而到时读到的值就是错误的,害得我弄了两个晚上,幸好我留意了这个语句。...总结:在C语言里,倘若程序员很清楚的知道运算符的优先级,这个自然好,但是如果有点模糊,那就很有可能要出错了,那就去看看C语言书,最保险的是加上括弧,那样也是没有问题的。

    64720

    C++ 虚函数详解:多态性实现原理及其在面向对象编程中的应用

    在面向对象的编程中,多态性是一个非常重要的概念。多态性意味着在不同的上下文中使用同一对象时,可以产生不同的行为。...C++是一种面向对象的编程语言,在C++中,虚函数是实现多态性的关键 什么是虚函数 虚函数是一个在基类中声明的函数,它可以被子类重写并提供不同的实现。...在C++中,使用关键字virtual来声明一个虚函数。虚函数的原理是将函数调用的控制权交给运行时环境,而不是编译时环境。因此,虚函数的实现需要在运行时才能确定。...注意,在Circle类中的重写函数中使用了override关键字,这是C++11中引入的新特性,表示该函数是对基类中同名函数的重写。...在实际编程中,多态性也是非常有用的。例如,我们可以使用多态性来编写一个通用的排序函数,该函数可以对不同类型的数据进行排序。另一个例子是图形界面编程,我们可以使用多态性来处理不同的用户输入事件。

    1.1K10

    77.如果用go语言,在 RANDOMIZED-QUICKSORT 的运行过程中,在最坏情况下,随机数生成器 RANDOM 被调

    二、如果用go语言,在 RANDOMIZED-QUICKSORT 的运行过程中,在最坏情况下,随机数生成器 RANDOM 被调用了多少次?在最好情况下呢?以θ符号的形式给出你的答案?...文心一言: 在 RANDOMIZED-QUICKSORT 的运行过程中,最坏情况下,随机数生成器 RANDOM 的调用次数为 O(n)。...在最好情况下,每次递归调用 quicksort() 函数时会使用数组中的一个元素作为随机数,此时 random() 被调用的次数为 n 次。...在这里插入图片描述 chatgpt: 在随机化快速排序(RANDOMIZED-QUICKSORT)中,随机数生成器 RANDOM 在每次选择划分元素时被调用。...在最好情况下,随机数生成器 RANDOM 仅被调用一次。当每次都能选择一个恰好平衡分割的划分元素时,最好情况发生。 因此,在最好情况下,RANDOM 被调用的次数为 Θ(1)。

    31770

    WebAssembly 1.0被纳入W3C推荐标准,也是在浏览器中运行的第四种语言

    万维网联盟(W3C)最近宣布,WebAssembly核心规范现在是正式的Web标准。继HTML、CSS和JavaScript之后,WebAssembly正式成为第四个在浏览器中本地运行的语言。...WebAssembly程序可以嵌入到浏览器中,可以作为独立的VM运行,也可以集成到其他环境中。 为了包含各种用例,WebAssembly规范被分割并分层为几个文档。...W3C中国 2019年12月5日,W3C WebAssembly 工作组发布 WebAssembly 正式推荐标准(W3C Recommendation),为 Web 带来一种支持代码在浏览器中运行的新语言...与 Java 不同,WebAssembly 通常是由其他编程语言(如C/C++ 和 Rust)作为编译目标而生成的。...在 Web 浏览器中,WebAssembly 与主机环境的交互都通过 JavaScript 进行管理,这意味着 WebAssembly 依托 JavaScript 高度精心设计的安全模型。

    81820

    ArkTS-@Prop父子单向同步

    概述 @Prop装饰的变量和父组件建立单向的同步关系: @Prop变量允许在本地修改,但修改后的变化不会同步回父组件。 当父组件中的数据源更改时,与之相关的@Prop装饰的变量都会自动更新。...如果子组件已经在本地修改了@Prop装饰的相关变量值,而在父组件中对应的@State装饰的变量被修改后,子组件本地修改的@Prop装饰的相关变量值将被覆盖。...在父组件中,传递给@Prop装饰的值不能为undefined或者null,反例如下所示。...父组件@State数组项到子组件@Prop简单数据类型同步 父组件中@State如果装饰的数组,其数组项也可以初始化@Prop,以下示例中父组件Index中@State装饰的数组arr,将其数组项初始化子组件...在子组件Child中做的所有的修改都不会同步回父组件Index组件,所以即使6个组件显示都为7,但在父组件Index中,this.arr保存的值依旧是[1,2,3].

    33820

    HarmonyOS学习路之方舟开发框架—学习ArkTS语言(状态管理 二)

    概述 @Prop装饰的变量和父组件建立单向的同步关系: @Prop变量允许在本地修改,但修改后的变化不会同步回父组件。 当父组件中的数据源更改时,与之相关的@Prop装饰的变量都会自动更新。...如果子组件已经在本地修改了@Prop装饰的相关变量值,而在父组件中对应的@State装饰的变量被修改后,子组件本地修改的@Prop装饰的相关变量值将被覆盖。...在父组件中,传递给@Prop装饰的值不能为undefined或者null,反例如下所示。...父组件@State数组项到子组件@Prop简单数据类型同步 父组件中@State如果装饰的数组,其数组项也可以初始化@Prop。...以下示例中父组件Index中@State装饰的数组arr,将其数组项初始化子组件Child中@Prop装饰的value。

    37620

    HarmonyOS学习路之方舟开发框架—学习ArkTS语言(状态管理 四)

    @Observed装饰器和@ObjectLink装饰器:嵌套类对象属性变化 上文所述的装饰器仅能观察到第一层的变化,但是在实际应用开发中,应用会根据开发需要,封装自己的数据模型。...概述 @ObjectLink和@Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步: 被@Observed装饰的类,可以被观察到属性的变化; 子组件中@ObjectLink装饰器装饰的状态变量用于接收...这个实例可以是数组中的被@Observed装饰的项,或者是class object中是属性,这个属性同样也需要被@Observed装饰。...@Prop装饰的变量和数据源的关系是是单向同步,@Prop装饰的变量在本地拷贝了数据源,所以它允许本地更改,如果父组件中的数据源有更新,@Prop装饰的变量本地的修改将被覆盖; @ObjectLink装饰的变量和数据源的关系是双向同步...:该状态变量的改变触发2次更新: ForEach:数组项的赋值导致ForEach的​​​​​​​itemGenerator被修改,因此数组项被识别为有更改,ForEach的item builder

    40230

    数组方法整理

    push() 接收任意数量的参数,将它们逐个添加到数组尾部 返回值是修改后的数组长度 pop() 数组尾部移除最后一项 返回值是被移除的项 shift() 移除数组第一项 返回值为被移除的项 数组为空则返回...在没有给 concat()方法传递参数的情况下,它只是复制当前数组并返回副本。 传入的不是数组,则直接把参数添加到数组后面,如果传入的是数组,则将数组中的各个项添加到数组中。...参数为NaN时返回-1,所以不能搜索数组中的NaN。 这两个方法都返回要查找的项在数组中的位置,或者在没找到的情况下返回-1。 比较参数和数组项时,会使用全等操作符。...includes()方法类似 第一个参数表示要查找的数,第二个参数表示搜索的起始位置,返回一个布尔值。...(会覆盖原有成员)。

    1.1K40

    开发微信小程序,我为什么放弃 setData,使用 upData

    鉴于在下使用微信小程序开发时使用 setData 的蹩脚体验,开发了个库函数 wx-updata,项目上线之后,我把这个自用的库函数整理放到 Github 上开源出来 wx-updata,这个库函数在开发的时候对我很有帮助...}, , , { color: '灰色' }] } }) 这个方法会帮我们深度改变嵌套对象里对应的属性值,跳过数组项里不想改变的,只设置我们提供了的属性值、数组项,岂不是省略了一大堆蹩脚的代码...这就是为什么我在上线的项目中使用 wx-updata,而不是 setData 2. wx-updata 的优点 支持 setData 对象自动合并,不用写蹩脚的对象路径了 ?...支持对象中嵌套数组,数组中嵌套对象; 如果数组的某个值你不希望覆盖,请使用数组空位来跳过这个数组项,比如 [1,,3] 这个数组中间就是数组空位; 如果数组空位你的 Eslint 报错,可以使用 wx-updata...,wx-updata 同样暴露了工具方法,用户可以在页面代码中直接使用工具方法进行处理: // 页面代码中 import { objToPath } from '.

    61210

    关于echarts使用的常见问题总结

    关于echarts使用的问题总结 1.legend图例不显示的问题: 在legend中的data为一个数组项,数组项通常为一个字符串,每一项需要对应一个系列的 name,如果数组项的值与name不相符则图例不会显示...; 2.图表位置无法紧贴画布边缘的问题: 在grid绘图网格里,containLabel(grid 区域是否包含坐标轴的刻度标签,默认不包含)为true的情况下,无法使图表紧贴着画布显示,但可以防止标签标签长度动态变化时溢出容器或者覆盖其他组件...,将containLabel设置为false即可解决; grid:{ containLabel:false } 3.反向坐标轴: 在echarts3中xAis和 yAis:{ inverse:true...} 新添加了inverse属性,在inverse为true的情况下执行反向坐标轴; 4.动态替换地图图表的方法: 在echarts3中由于地图精度的提高,不在内置地图数据可以在地图下载页面http...文件请联系我; eCharts 中提供了两种格式的地图数据,一种是可以直接 script 标签引入的 js 文件,引入后会自动注册地图名字和数据。

    3.1K40

    JavaScript性能提升学习

    管理作用域链,将全局变量的引用存储在局部变量中,用局部变量代替全局变量,将全局变量的访问次数从多次改为1次,数量越大,效果越明显(with和try/catch中的catch可改变执行环境作用域链,但不推荐...()的原生DOM方法在大多数浏览器中略快,cloneNode比createElement略快。...,此处为死循环,因为alldivs.length是不断更新的,并且速度相比直接查询数组length慢很多,因为length每次都要重新查询。...在IE中,nextSibling比childNode表现优异,选择过滤非元素节点的api效率更高。...5 字符串和正则表达式 当连接数量巨大或尺寸巨大的字符串时,数组项合并是唯一在IE7及更早版本中性能合理的方法。

    1.3K20
    领券