10年内两类必被淘汰的企业软件开发公司(转载)

嵌入式开发中Tab与空格混用的危害与统一规范实践 在软件工程中,代码格式一致性是保障可读性与团队协作效率的基础。从原理上看,制表符(Tab)与空格(Space)在存储与显示机制上存在本质差异:Tab是控制字符,其显示宽度取决于编辑器设置;空格则是固定宽度的字符。这种差异导致混用时会引发代码对齐错乱、版本控制冲突及跨平台兼容性问题,严重影响工程的可维护性。尤其在嵌入式开发领域,资源受限环境与高可靠性要求使得统一的编码规范更为关键。通过配置编辑器、集成clang-format等自动化工具,可以强制实现缩进风格的一致性,从而提升代码质量与团队协作效率。本文聚焦于 阅读详情

第一类:无明确发展目标的软件公司

这类软件公司没有明确的发展目标,赚钱主要靠接各种类型的项目,有什么项目就做什么项目,号称什么都能做,但是什么都做不好,做一单就是一单,没有任何沉淀和继续把这个软件深入的做好的想法。这类软件公司的特点就是人员流动量非常大,做项目时基本上都是临时招人,老板想尽一切办法让甲方签字验收,做完项目老板把大多数钱拿走,手下人散光,纯属骗钱型公司。

第二类:附属型软件公司

这类公司多属于某些较大企业的附属型公司,前身一般是信息中心这样的机构,专门针对该公司的业务需要开发专有软件。这类公司一般有比较丰富的行业经验和资源,但是由于没有市场竞争压力,这种类型的公司一般只求完成任务,没有更加上进的想法。但是从长远角度来看,随着社会的进步,劳动分工会越来越细,附属型软件公司的开发成本会越来越高,而且母公司受到降低运营成本的压力而对软件的要求也会越来越高,当附属型公司成本和开发能力的不足达到一个临界值的时候,这种公司就会被踢掉(或者完全去掉开发人员,只保留几个人恢复成原来的信息中心)。

软件市场现在还不成熟,主要原因用户并不成熟,软件本身是个新鲜东西,国内企业大多数是刚刚才接触软件,所以还不会正确的选择产品和厂商。在面对众多的软件产品和厂商时:

  • 要么是乱选一家。这就是第一类软件公司的生存条件。
  • 要么就是根本不相信这些厂商。这就是第二类软件公司的生存条件。
  • 要么就是找名气最大的。这是目前最正确的做法,但是代价是成本太高(大家都找他,价格自然抬上去了)。

现在软件开发业内还是一个乱世,各种类型的软件公司也是鱼龙混杂。但是正所谓乱世出英雄,可以肯定的是,最后在残酷的市场竞争下活下来的企业一定是一直专注于某个领域内的专业软件公司。

他们不像第一类公司那样什么项目都做,而是只做某一个行业内的软件,他们非常理解这个行业的本质需求,并且能持续的把这个软件一步一步慢慢完善;也不像第二类公司被大公司“包养”起来,针对单一客户服务而丧失市场竞争能力,而是在这个行业内面临许多别的做同样业务公司的竞争压力,他们会努力的改进技术,提高软件质量,降低软件的开发和维护成本。

企业软件界的未来就是由一些这样的软件公司构成,他们在各自的领域内竞争拼杀。拼质量、拼成本、拼服务。随着科技的进步,用户对软件也会越来越熟悉,越来越成熟,也越来越离不开软件,那时候企业软件的市场价值至少是现在的10倍以上。人类的生产力大规模的依靠信息技术达到一个新的阶段。

【Unity Shader】Special Effects(十二)Glow 外发光(UI) Properties_GlowColor ("外发光颜色", Color) = (0, 0, 0, 1)_GlowIntensity("外发光强度", Range(0, 1)) = 1参数详解:_GlowColor:外发光颜色,指定外发光的显示颜色。_GlowIntensity:外发光强度,指定外发光的显示强度,0为不可见,1为最强强度。 阅读详情

相关推荐

emwin与Modbus通信结合:项目实例

通过实际项目讲解emwin界面设计与Modbus通信协议的融合应用,深入剖析数据交互流程。掌握emwin在工业控制场景中的实用技巧,提升系统人机交互与稳定通信能力。

weixin_34618526的博客 483

软件开发公司

1.河南右蓝科技有限公司 成立于2018年,注册资金1000万,自公司成立以来一直专注互联网产品高端定制开发业务,由公司独立研发完成并发布上线的客户案例近二百例,包含商城类应用、视频(视频对话)类应用、社交类应用、O2O应用、论坛、新闻、医疗等多行业的网络应用程序,积累各大行业多端程序开发与维护经验,能从容针对各行业制定兼具高安全性、易扩展性、易维护性、高稳定性以及极致用户体验等特征的产品方案。公司设有研发部、项目部、财务部、综合部、行政部、业务部,其中研发部拥有常备开发团队5个,预备开发团队3个,累积技

m0_62238824的博客 1万+

Labelme安装教程(附Anaconda安装教程)

本文详细介绍了如何安装Anaconda和Labelme,还提供了常见问题的解决建议。

HanYan_ing的博客 1万+

人工智能时代,软件工程师们将会被取代?

人工智能的时代已经来临,比想象中来的更快,不可逆转,人工智能的广泛应用将为各行各业带来巨大的冲击。我相信人工智能将产生类似工业革命这种效果,人类的生产力得到极大解放。短期来看,人工智能只是辅助我们工作的工具,作为软件工程师需要利用好工具,需要做好持续学习甚至终身学习的准备,需要从繁琐重复的工作中脱离出来,提高自己与机器,与人打交道的能力,将更多的精力投入到需求的分析、架构的设计等,做更多更有价值的事情。

悟鸣的技术博客 2万+

阿里开源最强数字人工具 EchoMimicV2,本地部署(一)

EchoMimicV2是阿里推出的半身人体AI数字人项目,基于参考图片、音频剪辑和手部姿势序列生成高质量动画视频,确保音频内容与半身动作的一致性。现在本地部署,安装体验一下。

缘分天空的专栏 4614

Dobot Magician机械臂二次开发指南:如何利用Python脚本和I/O接口实现自动化任务

本文详细介绍了Dobot Magician机械臂的二次开发方法,重点讲解如何通过Python脚本和I/O接口实现高级自动化任务。内容包括开发环境搭建、运动控制API解析、I/O接口应用以及典型场景实现,帮助开发者充分发挥Dobot Magician的潜力,适用于工业自动化、教育科研等领域。

weixin_26968079的博客 267

这三款曾红极一时的软件,现已风光不再,而遭嫌弃的它成了香饽饽

在中国互联网产业这二十多年里,出现了好多让人爱不释手的软件和产品,给大家留下了超多的美好回忆。但时间这东西,总是不等人,随着时代的发展,有些软件和产品就慢慢地淡出了我们的视线,留在了回忆里。

无乞的博客 1613

YOLO26改进策略【卷积层】| CVPR 2025 频率动态卷积 FDConv 频域分权重提多样性 + 双调制降冗余,增强特征表征能力

本文记录的是利用FDConv 算子改进 YOLOv11 的卷积层特征提取层。(Frequency Dynamic Convolution)通过傅里叶域权重划分与空间-频率双调制机制结合,实现YOLOv11特征提取中频率多样化的动态卷积与空间自适应的频带调制。本文利用算子,通过傅里叶不相交权重生成频率差异化的并行卷积核以丰富特征表达,再通过核空间调制和频带调制结合局部-全局信息、适配图像空间异构性,同时依托固定参数预算实现轻量化设计,对YOLOv11中目标的低频语义特征与高频细节/边界特征进行针对性增强、抑制

Limiiiing的博客 476

别在学Struts2,它已经过时了

前言: 目前大部分人的简历上面都写了熟悉ssh框架,尤其是刚才学校走出来或者刚从培训机构出来的学生。但是学校讲的Java都是按照教科书来讲,教科书更新速度慢,赶不上互联网发展的速度,一般讲的都是几年前流行的技术。这个时候学生就需要自学,那么自学的教程就来源于网上的各种培训机构,有些大型培训机构技术更新还不错,赶上互联网的步伐。但是有些小培训机构,没有那么强的师资力量,这个时候就比较坑爹了,对于完...

hnjsjsac的博客 8022

【腾讯小龙虾WorkBuddy专栏01】初识WorkBuddy!定位、核心优势、功能界面全解析

【腾讯小龙虾WorkBuddy专栏01】初识WorkBuddy!定位、核心优势、功能界面全解析

AI人人懂 3845

RK3568平台开发系列讲解(项目篇)手写数字识别

📢 本篇章带大家基于飞桨(PaddlePaddle),完成一个简单的手写数字识别任务。

内核笔记 1182

避雷!未来可能会消失的9大编程语言!

加之其他编程语言如Go和Python在灵活性和实用性上更具优势,使得Haskell的使用逐渐减少。

2222

prometheus普罗米修斯集监控外部k8s

prometheus普罗米修斯集监控外部k8s

你是我一生的追求 2249

10年内两类必被淘汰的企业软件开发公司(转载再转载)

现在软件开发业内还是一个乱世,各种类型的软件公司也是鱼龙混杂。但是正所谓乱世出英雄,可以肯定的是,最后在残酷的市场竞争下活下来的企业一定是一直专注于某个领域内的专业软件公司。第一类:无明确发展目标的软件公司这类软件公司没有明确的发展目标,赚钱主要靠接各种类型的项目,有什么项目就做什么项目,号称什么都能做,但是什么都做不好,做一单就是一单,没有 任何沉淀和继续把这个软件深入的做好

zuzubo的专栏 1261

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

10年内两类必被淘汰的企业软件开发公司(转载)

现在软件开发业内还是一个乱世,各种类型的软件公司也是鱼龙混杂。但是正所谓乱世出英雄,可以肯定的是,最后在残酷的市场竞争下活下来的企业一定是一直专注于某个领域内的专业软件公司。 第一类:无明确发展目标的软件公司 这类软件公司没有明确的发展目标,赚钱主要靠接各种类型的项目,有什么项目就做什么项目,号称什么都能做,但是什么都做不好,做一单就是一单,没有任何沉淀和继续把这个软件深入的做...

weixin_30339969的博客 72

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

[*开同*看] 10年内两类必被淘汰的企业软件开发公司

第一类:无明确发展目标的软件公司 这类软件公司没有明确的发展目标,赚钱主要靠接各种类型的项目,有什么项目就做什么项目,号称什么都能做,但是什么都做不好,做一单就是一单,没有任何沉淀和继续把这个软件深入的做好的想法。这类软件公司的特点就是人员流动量非常大,做项目时基本上都是临时招人,老板想尽一切办法让甲方签字验收,做完项目老板把大多数钱拿走,手下人散光,纯属骗钱型公司。 第二类:附属型软...

weixin_30856725的博客 91

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

这几门语言可能要被淘汰了!

本文转载自 GitHubDaily 为了办公便捷和效率提升,新的编程语言如雨后春笋般出现,但只有少数编程语言才能成为新宠。 这种进步的一个副作用是一些古老的编程语言必然会跟历史一样被人们遗忘。 如果一个编程语言不能与时俱进,那用户群一定会流失。 有人记得 COBOL 编程语言吗?可能很多人都不知道这门语言。 其实在 1960 年代和 1970 年代,它是许多美国银行和政府机构的首选的编程语言,但最终现在哪里还能见到它的身影? 等一些政府机构发现他们需要通过更新代码来全面改革失业系统时,才发现

m0_46163918的博客 1万+

京东回应:2019年将末位淘汰10%高管

整理 | 琥珀出品 | AI科技大本营(ID:rgznai100)近日,据知情人士透露,京东将在 2019 年末位淘汰 10% 的副总裁级别以上的高管。这一消息已被京东向...

AI科技大本营 1889

未来10年内 API会让网站逐渐消亡

在未来10年里,WEB网站的用户访问数量将会急剧下降,这和API(结构化数据)的发展有着举足轻重的作用。API在在未来的10年里将会对网络产生深远的影响,包括SEO行业。 要理解为什么我觉得是这样,先让我们来看看在过去20年里互联网的发展。我不打算在这篇文章中解释什么是API,你只需要一个了解大概即可。 网站的历史变化 互联网的发展已经超过20年,在这段时间里发生了很大的变化,这是互联网上由

Freda的专栏 810

末位淘汰法则(转载)

通过竞争淘汰来发挥人的极限能力末位淘汰法则(活力曲线,10%淘汰率法则):通过竞争淘汰来发挥人的极限能力   提出者:GE公司前CEO杰克·韦尔奇(活力曲线其实质就是“末位淘汰”)   点 评:将员工划分为不同的类别,然后严格地...

cqwmy840702的博客 259

京东末位淘汰:为什么末位淘汰不适合用在软件研发团队?

本文转载自公众号 轻松做软件前些日子,京东官方证实“将在2019年末位淘汰10%副总裁及其级别以上的高管。”借这个话题,我想和大家探讨一下末位淘汰制是否适合用在软件研发...

程序员小灰的博客 2379

京东2019年将淘汰10%副总裁级别以上的高管!

深入浅出核心知识点和面试点 解读圈内热文时事,为你带来有价值的内容 关注后点击“最有价值”,拉你进群~ 近日有媒体报道,京东在今年举办开年大会时,宣布本年将末位淘汰10%的副总裁级别以上的高管。 消息一出,网友炸了,从去年底到开年初,这么多公司裁的都是基层员工,连动一动小组leader的都很少见,而京东上来就搞这么一出,着实让人一惊! 首先说说为啥高管或者说一般的领导动...

weixin_36841920的博客 2498

三、Redis内存淘汰策略

Redis内存淘汰策略

小刺猬 864

企业软件应用架构

企业软件应用架构 上一篇文章《企业应用的趋势》总结了一下我了解的企业软件的趋势,感谢朋友们的反馈和指正。这篇文章聊一聊我了解的企业应用的架构之一。 架构 架构图中的各个部分如下: (1)客户端:用户用来访问系统的终端,包括台式机、笔记本、移动设备(iPhone, iPad, ...

chuorunduo8217的博客 147

Redis淘汰机制

前言 正好最近工作上把C和C++捡回来一些,顺便跟着源码看看Redis的过期策略与内存淘汰机制。整理了下几篇文章,转载from: https://www.jianshu.com/p/8aa619933ebb https://blog.youkuaiyun.com/asdfsadfasdfsa/article/details/88339060 https://www.jb51.net/article/1...

u013374645的博客 1007

淘汰缓存还是修改缓存

问:KV缓存都缓存了一些什么数据? 答: (1)朴素类型的数据,例如:int (2)序列化后的对象,例如:User实体,本质是binary (3)文本数据,例如:json或者html (4)… 问:淘汰缓存中的这些数据,修改缓存中的这些数据,有什么差别? 答: (1)淘汰某个key,操作简单,直接将key置为无效,但下一次该key的访问会cache miss (2)修改某个key的内容,逻辑相对复...

u013950426的博客 258
上一篇: 我的学习计划!新年来了,新技术也来了——学习啊!
下一篇: 中国软件业的混乱,观总价值2亿项目后的感叹(转载)
MyNameEPC
博客等级 码龄23年 6粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值