不以善小而不为,不以恶少而为之

Xilinx Chip2Chip IP核实战:Aurora PHY通信配置与仿真避坑指南 本文深入解析Xilinx Chip2Chip IP核与Aurora PHY的通信配置与仿真优化,提供实战避坑指南。通过AXI协议转换桥实现FPGA间高速数据传输,详细讲解Aurora PHY参数设置、仿真加速技巧及常见问题解决方案,帮助工程师快速部署稳定高效的芯片间通信系统。 阅读详情

记得在大学的时候 ,有一次上C的实践课(就是上机咯^^),虽然我们专业与编程分不了家,不过喜爱这个玩意的同学却寥寥无几,所以上机调程序都一个比一个慌.小弟不才,不过这行当还玩得可以,所以课间很多同学的程序问题都求教于我,短短二十来分钟,连续调了N个小程序,初哥的程序都不难,调起来很容易,都不记得内容了,但有一个细节却让我至今难以忘怀,就是基本我在帮他们看程序之前都要做一件事,就是把他们的程序从头到脚认认真真的重新排版一次.没有办法啦,他们当时根本都不知道编写风格为何物,代码一行过,定义函数不分家,括号重重叠叠的多得很,一接手根本无法调试.依稀记得梁肇新在他的<编程高手箴言>中痛斥过这些非职业行为,好像还说到还要有文件头什么的,很久之前看了,不知道是不是^)^.

到现在工作N年了,当上一个梦寐以求的小小PG(正确来说还只是coder而已),终于能接触到职业的代码了,但却让我大失所望,能接触到的代码的编写风格差的要命,文件头没,变量申明定义规则没,函数说明没...
反动的我多次向上头反映我的不满,要求改善这种低效的开发状态,但回答往往是"历史问题","太理想","很好,但行不通",老前辈们还说小公司都这样的了,劝我省省.难道这就是中国小软件公司的通病吗,真不明白...

直到离开那家公司前,我终于明白了一句话,搞软件的搞得好,不在乎技术有多高,就看管理有多好!

(PS:这个"好"不是指卖的好,中国软件销售,明眼人都知道是靠什么,这里不想讨论这个)

今天,一位好友求教于我关于触发器的编写的问题,我就按着他的需求写了一个很简单的测试脚本,如下

/*----------------------------------------------------------------
脚本名称:            test_tirgger.sql
脚本功能:            测试触发器
脚本相关资料:
脚本相关脚本:
脚本来由:            
脚本创建人:            林清风
脚本创建日期:        2007-8-31
脚本最后修改人:        林清风
脚本最后修改日期:    2007-9-1
----------------------------------------------------------------
*/



/*----------------------------------------------------------------
创建用于测试的表
----------------------------------------------------------------
*/

--t_pm_project
CREATE TABLE t_pm_project
(
    ID                
INT        NOT    NULL    IDENTITY   (1,    1)    PRIMARY KEY,
    FNumber            
INT        NULL,                                            --测试要更新的字段
    FName            INT        NULL,                                            --测试要更新的字段
    KEY_3            INT        NULL                                            --不更新的字段
)
GO

--t_Item
CREATE TABLE t_Item
(
    ID                
INT        NOT    NULL    IDENTITY   (1,    1)    PRIMARY KEY,
    FNumber            
INT        NULL,                                            --测试要更新的字段
    FName            INT        NULL,                                            --测试要更新的字段
    FItemClassID    INT        NOT NULL,
    FExternID        
INT        NOT NULL,
    FParentID        
INT        NOT NULL
)
GO

/*----------------------------------------------------------------
创建触发器
----------------------------------------------------------------
*/

CREATE TRIGGER test_tirgger ON t_pm_project 
FOR INSERT
AS
--取t_pm_project表中要插入的值
DECLARE @Fname INT
DECLARE @Fnumber INT
SELECT TOP 1 @Fname = Fname, @Fnumber = Fnumber
FROM t_pm_project
ORDER BY ID DESC
--完成t_Item表的插入操作
INSERT INTO t_Item (Fname, Fnumber, FItemClassID, FExternID, FParentID)
VALUES (@Fname, @Fnumber, 3007, -1, 0); 
GO


/*----------------------------------------------------------------
测试触发器运作
----------------------------------------------------------------
*/

INSERT INTO t_pm_project
VALUES (10, 11, 12);

INSERT INTO t_pm_project
VALUES (13, 14,    15);
GO

/*----------------------------------------------------------------
查看测试结果
----------------------------------------------------------------
*/

SELECT * FROM t_pm_project;
SELECT * FROM t_Item;
GO

/*----------------------------------------------------------------
测试完毕,清除数据
DROP TABLE t_pm_project;
DROP TABLE t_Item;
GO
----------------------------------------------------------------
*/

 

大虾们不要见笑小弟笨拙的代码,大家只看里面包含的东西--文件头,注释,功能代码,测试代码.

我只想说明一个问题,如果我们就是连编写一个这么简单的应用都随随便便,但求写出那些功能能运作的那部分代码就可以的话,那么我最后能得到的是什么,是一个良好的软件吗,这样的源码有意义吗?

一些小软件公司用尽很多方法防止代码外漏,但很多拿来一看,真想叫一句"OH!MY GOD!".全世界都都知道开源世界的项目文档是最缺乏的,但在我看来代码很多比国内很多软件公司的代码要长得漂亮多了,至少人家的五官还俱全,不像国内很多出来吓人的都是没嘴巴,没眼睛,没耳朵...

傍晚开收工时,那位好友又发来的信息,说他编写的脚本把字符串当整型来处理了,一个晕~
我问他编写脚本的时候没有先把要更改的表的脚本反编译出来核对过才开始么?没有先编写测试脚本才写功能的么?...

开发是一门艺术,也是一门严肃的生产活动,严格的流程造就过硬的产品.

不以善小而不为,不以恶少而为之,同行奋斗的兄弟们共勉吧!

Cadence Allegro新手避坑:从原理图到PCB,解决‘netrev.lst does not exist’的完整流程 本文详细介绍了Cadence Allegro从原理图设计到PCB导入网表的完整流程,特别针对新手常见的'netrev.lst does not exist'错误提供了系统解决方案。内容包括环境准备、原理图设计规范、网表生成与导入技巧,以及设计数据管理最佳实践,帮助工程师高效完成PCB设计任务。 阅读详情

相关推荐

STM32CUBEIDE调试中HardFault_Handler崩溃的故障分析器实战解析

本文详细解析STM32CUBEIDE调试中HardFault_Handler崩溃问题的实战处理方法。通过内置故障分析器自动诊断硬件异常原因,如内存越界、堆栈溢出等,提供图形化界面简化调试流程,并分享配置步骤、典型案例及高级调试技巧,帮助开发者快速定位和解决嵌入式系统崩溃问题。

night的博客 643

家训

《紫阳朱子家训》全文317字: 君之所贵者,仁也。臣之所贵者,忠也。父之所贵者,慈也。子之所贵者,孝也。兄之所贵者,友也。弟之所贵者,恭也。夫之所贵者,和也。妇之所贵者,柔也。事师长贵乎礼也,交朋友贵乎信也。 见老者,敬之;见幼者,爱之。有德者,年虽下于我,我必尊之;不肖者,年虽高于我,我必远之。 慎勿谈人之短,切莫矜己之长。仇者以义解之,怨者以直报之,随所遇而安之。人有小过,含容...

diaobingdao6816的博客 235

Excel VBA--按某一列拆分数据到多个文件

首先,将需要拆分的sheet命名为“明细”,接下来运行此代码,按提示操作即可。 在这里插入代码片 Sub chaifen() '定义变量类型 Dim sht, sh1, sh2 As Worksheet Dim k, i, j As Integer Dim irow As Integer Dim col As Integer Dim str As String '程序开始是要求输入按哪一列拆分数...

weixin_43650026的博客 5873

朱子家训

黎明即起,洒扫庭除,要内外整洁; 既昏便息,关锁门户,必亲自检点。 一粥一饭,当思来处不易; 半丝半缕,恒念物力维艰。 宜未雨而绸缪, 毋临渴而掘井。 自奉必须俭约, 宴客切勿留连。 器具质而洁,瓦缶胜金玉; 饮食约而精,园蔬胜珍馐。 勿营华屋,勿谋良田。 三姑六婆,实淫盗之媒; 婢美妾娇,非闺房之福。 奴仆勿用俊美,妻妾切忌艳妆。 祖宗虽远,祭祀不可不...

weixin_34080571的博客 164

Xilinx ZYNQ 7000学习笔记二(FSBL代码分析启动-汇编代码)

Xilinx ZYNQ 7000学习笔记

u011116085的博客 4246

CentOS7下快速修复libssl.so.1.1缺失问题(附腾讯云镜像加速下载)

本文详细介绍了在CentOS7系统中快速修复libssl.so.1.1缺失问题的工程化实践方案。通过编译安装OpenSSL 1.1.x版本、配置动态链接器及创建符号链接等步骤,有效解决共享对象文件缺失问题,并提供了腾讯云镜像加速下载的优化方案,帮助开发者高效部署现代应用。

weixin_33711647的博客 367

清风箴言 永远Beta版

1.线和面的差别师傅某天给两个门徒出了道题,要他们用各自的方法缔造一尺高的水柱,门徒A很快就打来一瓶水,洋洋得意请师傅看,只看他手一抬,瓶子一倒,一条几尺高的水柱飘然而下,师傅看后点点头没说什么,门徒B则忙着挑水,待到日落西山才归来,满头大汗地领师傅到后院,气喘呼呼的指着水深刚过一尺的小池塘,师傅此时叫门徒A重新做水柱,门徒A很麻利地从小池塘打了一瓶水正欲重施故技,可此刻院子刮起大风,倒下的水流随

清风阁 1万+

YOLOv8实战:用Labelme标注自定义数据集并训练分割模型(附完整代码)

本文详细介绍了使用Labelme标注自定义数据集并训练YOLOv8实例分割模型的完整流程。从环境搭建、数据标注与格式转换,到模型训练、调优、验证及部署,提供了实战代码和调优建议。文章还探讨了如何结合追踪目标技术,实现视频流中的实例分割与目标追踪,为计算机视觉应用提供了一套可复制的解决方案。

552

读《软星七年》有感

看完这篇好友推荐的文章,一口气细读下来,心中时而豪气激昂,时而酸痛万分,真是感慨良多,只知道现在心中有说不完的话。。。"...8月3日,北京举行《仙四》首发签售活动,张毅君如约到场。活动中,一位玩家表示愿意出钱捐助上海软星,支持《仙剑》的研发,被婉拒后,他又热心地说,那我就多买几套仙剑正版吧。张毅君很想上前劝阻,告诉他“赚钱不容易”。...""...在刚刚上市的《仙剑奇侠传四》的隐藏对白中,张

清风阁 9743

Gamit10.71添加新的天线类型

添加新的天线类型需要涉及到四个文件:antmod.dat,rcvant.dat,guess_rcvant.dat,hi.dat。 注意:格式要一致!!! 举例说明,我要添加一个JCA229的天线(带JCAD天线罩),对应接收机使用的是南方的South Net-S9。

Penny的博客 2711

delphi 调用deepseek r1 api 并流式返回结果

摘要:本文展示了一个使用Delphi调用DeepSeek API的代码示例,包含两种调用方式:一次性获取结果和流式返回结果。代码实现了完整的API请求处理,包括HTTP客户端设置、JSON数据处理和UI界面交互。其中流式调用通过TStreamReader处理服务器发送事件(SSE),实时更新到TRichEdit控件并保持滚动条位置。文章还提到界面美化优化,为Delphi开发者提供了调用AI服务的实用参考方案。(150字)

全粘工程师 492

打造高速的工作平台

前段时间进手的爱机,一直没有时间去摆弄,白白让6G内存沉睡了两个星期,今天就让它为我的工作平台提速吧 ^_^ 1.开启Win2003对4G以上内存的支持我的机子是AMD的,所以很简单,只要修改boot.ini的启动参数就可以了,就是加上/PAE参数,如 [boot loader]timeout=30default=multi(0)disk(0)rdisk(0)partition

清风阁 4536

完整复盘【避雷jd文职某岗位】潍坊青州hhj(据说未来搬到天津),助理实验师岗位,三人进面,面试全部不及格,空头岗位!像这种情况,该单位很多 | 附个人完整备考背诵题目 | 世间一场梦,不会再考这个了

本文以博主本人报考jun dui文职,从报考、备考、考试、查成绩到资格审查、面试,全程亲身经历,给想要报考该内容的朋友们一些小的参考。祝你顺利上岸!完整复盘【避雷jd文职某岗位】潍坊青州hhj(据说未来搬到天津),助理实验师岗位,三人进面,面试全部不及格,空头岗位!像这种情况,该单位很多 | 附个人完整备考背诵题目 | 世间一场梦,不会再考这个了

追光者♂:记录、分享、总结、提升,现象级专栏《Python从入门到人工智能》作者,无惧黑暗,坚信曙光 246

弃用EA重拾PD进行数据库设计的日子

EA(Enterprise Architect)这是我近一年来团队工作中的主打UML工具,它界面漂亮,代码生成和逆向工程都有很不错的表现,但是近日在设计数据库的工作中,使用它慢慢就有点力不从心的感觉。它主要令我不快的地方是:1.它是一个吃内存的大怪物,打开上百张表,就如大蟒蛇钻进小蚯蚓窝,动弹不了,严重影响效率和工作心情。2.生成的脚本错误太多且输出设置相当有限。 1)关于它的错误,从它不断修

清风阁 2773

深度学习工具包 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")

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

使PowerDesigner12.5生成C#类包含属性的方法

1.切换OOM模型2.选择菜单Language-->Edit Current Object Language3.修改Profile/Attribute/Templates/definition为下面第一代码即可.if (%isValidAttribute%)   [%comment%/n]/   [%customAttributes%/n]/   [%oidDocTag%/n]/    .if

清风阁 2358

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

维基百科可以访问,难得!

 如题,截图留念之 ^_^“若您来自中国大陆,并能顺利浏览维基百科,请向我们回报您的状况。”  o(∩_∩)o 

清风阁 2175

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

看两篇论80年后程序员找工作的文章有感

前天,闲逛网络,看到一篇名为《驳》的文章,同样也追根溯源看了那篇《谈“80后”程序员为什么找不到工作?》,看后有些心声不吐不快。首先那篇《谈“80后”程序员为什么找不到工作?》中说的我们这一代比较浮躁,缺乏责任感等等问题,我不否认也不赞同,如果说是否认的话,挖挖自己的良心,自己除了有点浮躁,其他都还是可以的,身边的同龄朋友甚至浮躁这一点都没有,所以说这些是完全看个人的;说赞同呢,这个世界上统计

清风阁 2140

Ext学习随想

前段时间在同事的介绍下,进入了Ext的殿堂。经过几天摸爬滚打,以有小成,并立马运用到项目中去展示它的威力。不过同我过去学习使用的js类库一样,都存在一个令人十分头疼的问题,就是开发效率的问题,失去智能语法感应,感觉就像回到求学时期在Linux下用vim开发C一样,设计以外编码工作负担过于沉重,面对项目每周过千行代码的工作量,再加之还有各种测试和质量控制,恐怕会吃不消。说到这里不禁想起几年前一位印度

清风阁 1635

《Getting Real》快速读书笔记

以下是我拜读《Getting Real》时,摘抄下来的一些句子,当中有一些是我常常烦的错误,也有一些是我始终坚持的信念,等我空闲下来时补上对每句话感受,不过现在就可以告诉大家,它绝对是值得阅读的一本好书。O(∩_∩)OPS:中文版(不完整版本)地址:http://gettingreal.37signals.com/GR_chn.php 做得比竟争对手少 为自己而做这个软件 

清风阁 1397

乱弹:互联网需要beta精神,但不需要Beta应用

前段时间有位同事发起话题,大概是说现在互联网中同一时间想到一个同一个点子的人可能有1000个,真正去做的可能只有10个,最后成功的可能只有一个,其实他想阐述的是“Just do it”真个很好的精神。但是我想到了另外一些东西,曾经有人说互联网的新技术领先的时间不会超过三天,因为一旦出来马上就有一堆跟风模仿者,毕竟模仿者的技术水平也甚高,如果跟风者是个大财团,也许出来就更是青出于蓝而胜于蓝的产物。有

清风阁 1145

从对FireFox不和谐的声音说起

昨天同事们都风风火火地试用Chrome,凭着它众多人性化的出色细致的设计,相信它在世界浏览器这场战争中慢慢会占到一席之位,但在中国这个国度,情况是不是会步FireFox的后尘呢?我试探着向朋友们推荐这个新生儿,结果是显然的,除了少数开发圈子的朋友表示感兴趣外,其他对它基本都是呲之以鼻,因为在他们心中除了IE这个浏览器之外,并没有其他更好的,或者更贴切地说,他们中大部分人都不知道浏览器为何物,就知道

清风阁 1111

兄弟,小心鼠标手!

 鼠标手是什么?相信IT人士都不会陌生,如果还陌生就应百一下或G一下啦,因为这和自身的健康密切相关啊!他形成的原因不想多说,有经历的人都知道,想想自己连女孩子手都没有机会碰过的双手就有这样的先兆,心里总是一酸,生活艰难啊!一天对着电脑工作十N个小时,为了缓解这种情况,大学时代的我早已未雨绸缪,练就了左右开工的绝活,但这样做最后的效果就只是西边晴东边雨,不然就是东边晴西边雨,总结来总结去,还

清风阁 1023

外国用户和国内用户看待浏览器的问题

1.外国PM:我们的系统只支持IE.客户:你们的系统怎么连FF都不支持吗?FF更加安全,而且我们很多员工是用MAC的哦~PM:呃~~我们的系统暂时只支持IE~~客户:那你们系统要马上加上这个支持,不然这个结果我们是很难接受的。。。PM:好的~~好的~~,马上支持。。。2.国内PM:我们的系统不但支持IE,还有支持FF。客户:FF最鬼烂,银行网都上不了,鬼才使用。PM:呃~~那是因为国内的网站大

清风阁 970

看腾讯做法有感

不得不承认,QQ现在是我生活的一部分,虽然我很少用它闲聊,但是每天都离不开它,它的签名功能我更是我发出感慨的地方.依稀记得以前,因为在XXX的压力下,腾讯把签名的某些文字作了过滤限制,但这些做法民间总会有点声音的,这些在所难免,想想,如果一个愤青突然想写上一个他认为不应该被过滤词语的时候被拒绝了,心理肯定起疙瘩,毕竟让人看到"你的签名含有非法文字"云云是不好受.但今天,我写签名时候无意可能

清风阁 898

训练数据示例

针对“规格书生成测试用例脚本”的任务,在 LLaMA-Factory 中使用即可。关键是把“规格书内容”放进input字段,把“期望的脚本输出”放进output字段。

liuxs2009的专栏 58

从瀑布到流水线:DevOps 入门与 GitLab + Jenkins + Docker 落地实践

先看清软件开发生命周期(SDLC)的全貌,再对比瀑布模型与敏捷开发,随后进入持续集成与 CI/CD 的机制内核;最后落到实操——在 GitLab、Jenkins、Docker 组成的四机实验环境里,走完源码托管、自动化构建、镜像封装与远程部署,直到参数化构建与版本回滚。概念与命令并重,既是入门地图,也是操作手册。

年轻的时候很穷,经过我多年的努力,终于不再年轻。 250
上一篇: 哭泣的宝贝
下一篇: 兄弟,小心鼠标手!
linqingfeng
博客等级 码龄21年 69粉丝 140原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值