精华内容
下载资源
问答
  • B2C运营实战任务卡 一注意事项 使用自己的公众号服务号订阅号进行运营实战与场景体验如果没有申请可以组内合作 每一个公众号就是一个企业每组不少于2个企业 请设计各自企业的名称门店及店员根据任务进行角色分配 ...
  • 沈阳工程学院 毕业设计论文任务书 毕业设计论文题目 微机数据采集的没M 系 别 自控系 班级 电子本 学生姓名 学号 指导教师 高明亮 职称 讲师 毕业设计论文进行地点 实训A216 任务下达时间 2011年3月20日 起止日期...
  • 单元2_任务二借书程序设计[文字可编辑].ppt
  • 国家开放大学(电大)Dreamweaver网页设计 形考 答案 HTML 调用js实现多项滑动门选项特效。
  • 嵌入式IC课程设计任务书,基于ARM S3C2410开发平台和嵌入式Linux系统,完成校园IC数据库管理系统的开发,IC智能可供学生用于校园内部处理杂务,购买食品、饮料、书本,
  • 如果没有用过自动取款机,先用你的银行取一次钱去吧,权当作调研。  我们首先插卡,输密码。做纯软件模拟,我们认为已经插好了,永久忽略。  你的程序要支持下面的工作:  屏幕输出:XX银行欢迎您(例如,...
    如果没有用过自动取款机,先用你的银行卡取一次钱去吧,权当作调研。
    
      我们首先插卡,输密码。做纯软件模拟,我们认为卡已经插好了,永久忽略。
      你的程序要支持下面的工作:

      屏幕输出:XX银行欢迎您(例如,贺氏银行欢迎您,下辈子一定做梦开银行。)

      请输入密码:
      用户输入密码(真正的自动取款机上,输入的密码显示为*,没有让人看见的,此处先不作处理。暂时用整数当密码,实际应该用字符串,想自己往前走一步,自己看第5章)
      显示密码(真正的自动取款机上,这需要检查密码是否正确,密码不对还有故事哪!哪会是显示出来,初级阶段,先就这样了。)
      显示功能选项
      1.查询
      2.取款
      3.存款
      4.转帐
      0.退出
      用户输入功能选择
      显示:谢谢,您选择了x号功能(现在的程序,当输入不是0-4都可以接受,以后再说)
      程序结束(现在结束可不行,还没办事呢。以后再说吧。)

      
      
      写完后,请将之发布为博文(程序中的注释自己加,程序前要有,中间也来些必要的)。在评论中提供你的相应博文地址,好让大家看到。
      
      (待续——选择结构程序设计项目任务……)
    展开全文
  • 连杆夹具设计,CAD图纸,任务说明书,工序,一套全
  • 7 设计选项卡类网页特效 本单元我们主要探讨实用的选项卡类网页特效的设计方法特效赏析任务1-1 应用setInterval函数和display属性实现选项的手动切换和自动切换 网页0701.html中的选项如图7-1所示单击选项标题...
  • 在上一次任务的基础上,改进用户选择功能后的工作  包括(1)用函数优化程序的结构;(2)完成取款并计算利息的工作。  函数的有关知识在第4章,可以提前预习。不过,凭在“初识程序设计”部分的几个例子,模仿...
    在上一次任务的基础上,改进用户选择功能后的工作
    
      包括(1)用函数优化程序的结构;(2)完成取款并计算利息的工作。
      函数的有关知识在第4章,可以提前预习。不过,凭在“初识程序设计”部分的几个例子,模仿着也能写出相关的要求。模仿是一种非常重要的学习方法,尤其适用于没有“系统”学习之前的探索。挑战一下,尝试这种有效的学习方法。 
      
      显示功能选项
      1.查询
      2.取款
      3.存款
      4.转帐
      0.退出
      用户输入功能选择,根据给出的答复,用switch多分支完成对应的功能:
      用户选择1-4功能后,分别调用一个自定义函数,完成对应的功能。定义的函数可以只输出一句话提示即可。——我们的项目已经越来越大了,需要在程序结构上有所注意了。
      输入1,调用函数showbalance(),显示“您的余额是xxxx.xx元。”(想过瘾,用你觉得足够大的数当余额)
      输入2,调用drawmoney(),完成取款:要求输入金额、存期,然后计算利息(税就不扣了),输出应该取出多少钱,在屏幕上显示本金xxxx.xx元,利息xx.xx元。此处说取多少就多少,且认为当天正好到期,不考虑超期。利息使用2011年7月7日公布的最新年利率:
      活期  0.50%
      3个月  3.10%
      6个月  3.30%
      一年  3.50%
      二年  4.40%
      三年  5.00%
      五年  5.50%
      另外,咱家银行卡在这个任务中还支持定期哩,这又是一个例外。
      输入3-4,自己编写函数,显示提示语;
      输入0,显示“谢谢,欢迎下次再来!”
      输入不是0-4,提示“输错,不要急!”
      程序结束
      
      
      (待续——循环结构程序设计项目任务一……)
      

      附:我在第3章时要用的一个好玩的例子,仔细读一下或许可以作为参考

    #include <iostream>
    using namespace std;
    int main()
    {
        char cChioce;
        void eat();
        void sleep();
        void hitdoudou();
        do
        {                
             cout<<"*  1. 吃饭"<<endl;
             cout<<"*  2. 睡觉"<<endl;
             cout<<"*  3. 打豆豆"<<endl;
             cout<<"*  0. 退出"<<endl;           
             cout<<"*  请选择(0-3):";
             cin>>cChioce;
             if (cChioce=='1')  // 我居然将==写成=
                  eat();
             else if (cChioce=='2')
                  sleep();
             else if (cChioce=='3')
                  hitdoudou();
             else if (cChioce=='0')
                  break;
             else
             {
                 cout<<"\007选择错误!"<<endl<<endl;
                 continue;
              }
              cout<<"恭喜你完成了一项工作!"<<endl<<endl;
       }while(1);
       return 0;
    }
    
    void eat()
    {
         cout<<"我吃吃吃... ..."<<endl;
    }
    
    void sleep()
    {
        cout<<"我睡觉觉... ..."<<endl;
    }
    
    void hitdoudou()
    {
         cout<<"我打打打... ..."<<endl;
    } 
    



    展开全文
  • 在上一次任务的基础上,完善一些环节  你的程序要支持下面的工作:  用#define或const定义常量PASSWORD,作为银行的密码(银行的密码可不是这样,它要分别记住各个帐户的密码,我们现在认为所有卡都这个...
    在上一次任务的基础上,完善一些环节
    
      你的程序要支持下面的工作:


      用#define或const定义常量PASSWORD,作为银行卡的密码(银行卡的密码可不是这样,它要分别记住各个帐户的密码,我们现在认为所有卡都这个密码)。
      屏幕输出:请输入密码
      用户输入密码(输入的密码仍然直接显示)
      判断输入的密码是否正确,如果正确,继续下面的工作,否则退出程序,提示:“你这个笨脑瓜!”(注意,真银行可不敢骂人,你的银行这样写写无妨。现在人的密码多了,常记不住,难免输错,以后我们会给人三次机会,三次都不对,吞卡没商量,以后再说。)
      显示功能选项
      1.查询
      2.取款
      3.存款
      4.转帐
      0.退出
      用户输入功能选择,根据给出的答复,用switch多分支完成下面的显示:
      输入1,显示“您的余额是xxxx.xx元。”(想过瘾,用你觉得足够大的数当余额)
      输入2-4的提示自编;
      输入0,显示“谢谢,欢迎下次再来!”(好有礼貌)
      输入不是0-4,提示“输错,不要急!”
      程序结束(事没办完不说,查询完再取款还得再走一次这个程序?不急,下次改进。)
      
      想起一个关于银行的段子分享:某人,貌似文化人的样子,驻足,仰望,大声念道“中国人民很行(hengxing)”。众人听得,好自豪,都觉得自己也行,大壮国威。再看,某人驻足在中国人民银行门前。
      
      写完程序后,请将之发布为博文(程序中的注释自己加,程序前要有,中间也来些必要的)。在评论中提供你的相应博文地址,好让大家看到。
      
      
      待续——选择结构程序设计项目任务(二)……
      
    展开全文
  • 最实用的高并发任务执行架构设计 | 架构篇

    万次阅读 多人点赞 2021-10-23 01:14:16
    高并发任务执行架构 需求场景 业务架构设计 技术架构设计 初始设计 演化阶段一 演化阶段二 演化阶段三 代码设计 总结 前言 随着互联网与软件的发展,除了程序员,架构师也是越来越火的职业。他们伴随着...

    目录

    前言

    高并发任务执行架构

    需求场景

    业务架构设计

    技术架构设计

    初始设计

    演化阶段一

    演化阶段二

    演化阶段三

    代码设计

    总结


    前言

    随着互联网与软件的发展,除了程序员,架构师也是越来越火的职业。他们伴随着项目的整个生命过程,他们更像是传统工业的设计师,将项目当做生命一般细心雕琢。

    目前对于项目架构而言,基本都会需要设计的几个架构。

    1、业务架构

    项目或者产品的市场定位、需求范围、作用场景都是需要在项目启动初期进行系统性分析的。在设计业务架构中,架构师还需要明确角色。我看过很多关于架构的文章,谈到角色的很少。

    什么是角色?

    例如:商场作为一个整体系统,角色就有消费者、店员、收费员、保安等等。各个角色完成好自己角色所需要承担的任务,整体系统就能完美的运行。

    对应到软件系统中,根据产品的定位和需求,也会有着对照的角色,比如:用户、数据审核者、产品制作者、运维人员等。在项目启动初期,架构师需要对项目中的每个角色做好职责定位,我相信在这点上,大部分开发同学在工作中,或多或少都有过职责不明确带来的困扰

     

     

    2、技术架构

    在软件项目研发过程中,我们会用到许多外部组件。在使用组件中,架构师必须结合业务需求合理的选择各个组件。项目是个生命,她会成长,架构师需要明白如果一开始就选择重量级组件会让还是个孩童的项目不受重负,架构师也需要明白如果技术架构的设计不具备拓展性,那么这个孩子无法茁壮成长。所以技术架构尤为重要。

     

    3、物理架构

    物理架构又叫做部署架构,项目产品如果要在生产环境稳定运行,一个稳定又高效的物理架构是必不可少的。而且往往物理架构和技术架构是相辅相成的,性能监控、异常告警、业务日志等等设计,都是为了让项目做更好的自己。

     

    高并发任务执行架构

    在我十年的工作中,业务相关、中间件、大数据都有做过。本文主要分享一下高并发任务执行框架设计,会由浅入深的讲述一下设计演化过程。如果你不只是想做业务后端开发,那么本文会给你一个全新的视野。

    需求场景

    我们列一下该项目的需求场景,看看工作中是否遇到过。

    1、有个复杂的数据需要制作,而且制作的时间很长,无法让请求方持续等待。所以请求方只能给你个回调地址,需要你完成这个制作后将产物通知他。

    2、复杂的制作过程需要消耗资源,而且资源有限,无法无限量提供。如果你有接触过AI,就会比较了解资源有限的感受。除了ASR、TTS这类识别类型的AI功能能做到近实时的反馈,大部分的算法在运行的时候都会消耗整张显卡,而且耗时很长。

    初看场景,很多后端可能会第一时间想到elastic-job(一个分布式任务调度框架)。即便你熟悉使用elastic-job,一开始就选择重框架是不是有种杀鸡用牛刀的感觉。不着急,我们一步步分析,一步步设计。

     

    业务架构设计

    高度抽象一下我们的业务,对产品设计者而言,貌似是个简单的不能再简单的东西。等到了技术架构,我们深入分析其中演化的功能点,就会发现这是个庞大的机器。我们先给他起个简单的名字:Task Execution Engine(缩写:TEE)

    技术架构设计

    下面我们开始进行核心模块的技术架构设计,按照我们的初始需求开始我们的设计旅程。

    初始设计

     

    设计说明:

    1、业务后端发出q1请求,我们首先需要对该请求的参数做矫正,为了可用性考虑。

    2、参数校验过后,给到执行引擎模块。执行引擎主要的职责有从资源表获取资源数据、将任务参数与资源参数封装到任务对象内、将任务提交线程池。有一点要说明执行引擎最好使用队列模式,任务先进队列,可以通过while循环方式或者定时线程池都可以,后面会推荐更好的。

    3、任务执行的状态与结果需要同步到数据库中,建议使用mysql

    小结:

    按照初始需求,该设计相对比较简单,完全够用了。但是按照产品的迭代,业务方的需求不会仅限于此。继续演化。

     

    演化阶段一

    随着业务的上线,业务端会马上迎来新的问题。

    1、由于提交的任务太多了,排在后面的任务迟迟无法等到自己获取到资源执行任务。当然我们可以完全靠增加资源来解决,但是资源的数量在产品前期是不可知的。所以需要有一些策略,比如让用户可以取消自己任务,而不是一直等待。

    2、任务的种类开始增加,业务端不满足于单一制作,开始要求多样化

    3、任务的执行过程开始需要用到其他资源,不再是一个资源对一个任务的模式了。

    4、任务的整体执行情况不可知,需要一定的量化分析,至少让业务组知道每天的任务成功率。

    按照需求进行第二版的设计,在尽量不改变原来整体设计的情况下,补充功能。

     

     

     

    设计说明:

    1、为了解决排队问题,增加了双队列算法来解决。用图解的方式解释一下双队列

     

     

    逻辑简单说明一下,任务优先提交至执行队列,引擎的定时读取队列的顺序优先为等待队列。如果等待队列中的任务可以获取所需资源,则立即启动线程执行,否则原封不动回到等待队列。引擎其次读取执行队列,如果无法获取资源则进入等待队列,如获取资源,则立即启动线程执行。

    那么取消队列,则只需要将队列中的任务踢出队列即可。在送回队里的过程中,一定要保证队列的有序性。

    2、创建了任务池,增加了任务封装层,在任务池中挑选需要执行的任务类。

    3、增加了策略机模块,添加资源调度策略,由资源调度策略堆任务所需资源合理分配。可以由业务方提供分配方案,尽可能保证任务的公平性。

    4、数据库增加统计表,可以考虑使用定时任务,将任务表的数据统计存入统计表

    小结

    现在看上去已经比较完善了,合理了任务调度、增加了任务种类、合理的资源调度,好像还不错。但是产品总会有新要求的,那么继续演化。

     

    演化阶段二

    渐渐的,你设计的引擎还不错。那么新的挑战来了。

    1、更多的业务方找到你,希望也使用你的项目进行任务制作,但是他们并不想共享资源,而是希望有自己的独立资源,和独立的队列。但并不是所有的资源都需要独立,一些可以支持高并发的资源,是可以共享的。简而言之,更多的业务方,由业务方为维度的独立队列,独立和共享的资源分配

    2、业务方找到你,说如果把任务1的结果给到任务2,其实就能拿到我要的结果。问题来了,原子任务要具备可以编排成复杂任务的能力

    3、任务的状态过程无法监控。OK,任务状态机

    4、既然大家都需要对接你的项目,能不能提供标准的sdk,我只需要引入就可以完美的对接你的系统。

    5、相同的任务参数,是不是制作出来的结果一致呢?那么是否需要增加结果缓存,降低对资源的消耗呢?

    6、完正的生产项目必然需要将日志、告警等关键信息传递出来,一旦发生问题可以马上定位到问题的起因。

    这些问题对于新人来说还是很有挑战的,需要对系统深层的含义有充足的理解。没事,我来好好来说下设计所需要掌握的知识点。

     

     

     

    设计说明:

    1、需要在资源表中区别资源类型,共享资源组所有业务组都可以使用,独立资源则资源具备业务标识。在执行引擎的队列管理中,也需要区分业务组,避免共用排队。这里给一个建议,共享的资源一定要是可以支持并发或者可以部署多个实例的,避免所有的业务组产品制作瘫痪

    2、增加了高级任务概念,高级任务可以将任意的原子任务进行组合编排,形成全新的任务。需要定义专属于TEE的语法规则。对语法规则引擎的开发,有一些建议。你可能会选择规则引擎,建议其实可以自己开发,毕竟语法不会太过复杂,没必要引入三方的引擎

     

     

    3、增加任务状态机,执行引擎在提交线程的同时,也想任务状态机提交任务线程信息。任务的进度状态可以同步给任务状态机中,同时一旦任务执行过长的时间,除了任务自己的超时机制外,也可由状态机的看门狗程序将卡死线程释放、资源回收

    4、研发属于TEE的SDK,作为内部系统不建议SDK增加鉴权模块。毕竟你对接的往往都是业务后端,鉴权不通过的话根本渗透不到TEE层面。给开发SDK一些建议,尽量引用较少的包,避免业务端引入带来的包冲突。SDK也需要添加一些回调Consumer或者Function,尽可能让业务端对接起来代码简单

    5、增加了缓存策略,可以设想一下,大部分情况下,相同的参数制作出来的结果也必然相同。使用redis,将任务参数与任务结果进行缓存,主键可以采用任务参数的MD5值。任务在提交给任务执行引擎前,检查缓存中是否已经存在结果。缓存的过期时间按照具体情况而定。

     

     

    6、增加日志系统和监控系统的对接,状态机与任务执行中的信息接入到日志系统中。对于日志系统的建议是,最好采用成熟的ELK架构。可以考虑两种方式

    a、将日志异步推送到消息队列(例如:kafka),使用flink将kafka存入es。

    b、使用logstash将日志内容清洗处理,推送到es。

    两种方式都可以,但是一定要异步推送日志,避免任务阻塞。

    告警系统的接入可以使用Prometheus,将TEE的指标信息开放出来,特别是告警信息。在Prometheus的告警监控规则中,可以将告警信息按照某些策略发送邮件或者短信,通知运维人员

     

    小结:

    做到这里,我们再看看我们的技术架构图,是不是感到很满足。但是这真的够了吗?

    演化阶段三

    随着业务愈发繁重,一个新的问题出现。

    1、TEE在本机运行很顺利,但是每个任务都是需要消耗线程的,单台模式线程必然不是无限的,总有吃满的时候。问题来了,TEE得支持分布式部署结构。但是有资源管理的存在,你无法通过加实例的方式来实现,因为资源调度必然混乱。

    2、假设TEE挂掉,则等于业务组此刻提交的任务均失败,容灾机制需要建立。

    到了这一步,很多小伙伴可能觉着一阵头大,分布式不是大数据的东西吗?不是的,不是大数据就不能分布式部署吗?就不能有主从节点吗?就不能有注册中心吗?要跨过内心的固有思想,我们往下看。

     

     

    设计说明:

    1、需要先将TEE项目做一下代码分解,将管理调度模块与任务执行模块拆解开了。消耗性能和线程较高的是任务执行模块,定义为TEE执行节点。消耗性能和线程较低,却需要参数校验、任务封装、资源调度、队列管理的是管理调度模块,定义为TEE管理节点。

    2、TEE执行节点可以多实例,形成节点池。管理节点可以考虑做成共享任务队列的管理池。这里有个难点,如何共享任务队列。建议使用zookeeper或者缓存方式,但是不管哪种方式都要注意使用集群,避免单点故障导致队列数据丢失。

    3、关于注册中心,可以使用开源组件,nacos、zookeeper都可以。在该架构设计中,其实注册中心并没有太多功能,如果你对自己有信心,可以尝试自己写一个注册中心,核心功能就是服务注册与心跳检测。可以用netty架构做一做,提高一下自己的代码能力。

     

     

    4、在管理池的调用方面,增加网关代理,可以使用nginx、konga等。主要功能是业务端调用的时候,随机打到管理节点上,就算一个管理节点挂了,也不会影响使用,保证了生产线的稳定

    小结:

    分布式架构,主从节点模式也好、哨兵模式也好、选举模式也好,按照自己的业务需求选择最适合自己的。不是大数据才有分布式,它是一种设计思想,要知道开发大数据组件的大佬们,也是一行行java写出来的。大佬们可以,为什么你不可以呢?

    代码设计

    在着手开发该系统的时候,我给大家一些代码开发的建议:

    1、定时任务的实现,从最简单的while死循环加sleep,到定时线程池,或者springboot的@Scheduled注解,都可以实现。我在这里推荐一下时间轮算法TimeWheel,有兴趣的可以去了解一下。

    2、异步消息处理,如果你只是想在项目内部使用消息总线,推荐使用guava包内的EventBus。按照消息的数量级,考虑使用RabbitMQ或者Kafka作为消息中间件。

    3、任务执行,推荐使用CompletableFuture进行异步非阻塞任务编程。

    4、在资源的使用中,可能存在多种协议类型http、ws、tcp等。所以代码设计中,尽可能提供完整全面的协议工具类。

     

    总结

    最近和一个同事闲聊的时候,他和我说了说最近面试高级研发的情况。总结一下,现在想招一个做过高并发场景的太难了,大部分人选只做业务相关。这让我想到了十年前,我刚工作的时候。那时候没有那么多框架,大部分功能需要看很多资料研究底层的原理与算法。随着软件行业的日益成熟,从以前拿着谷歌翻译看国外的组建说明,到从阿里云直接对接功能,软件研发的成本和时间也在大大缩短。渐渐失去了研究分析的动力,框架什么都有为什么要抓破脑袋自己写。

    怎么成长?怎么进步?

    上面给出的架构图,看上去都挺好理解。但真要自己去代码实现,中间各个环节出现的问题真的好解决吗?冰冻三尺,非一日之寒。没有日积月累的学习,是很难成功的。不要惧怕那些你看上去遥远的东西,获取你的几个晚上的学习,它就成了你最趁手的武器。对学习而言,难的永远不是过程,而是踏出第一步。

     

     

     

     

    高并发任务执行架构中,有一个模块看上去很不起眼,但是在你研发的过程就会发现他会给你制造大麻烦-资源调度。以后有时间我会单独做一篇关于资源调度的架构设计,与大家说道说道里面的坑。

    最后说一句:为什么不ban猛犸?

     

     

     

    展开全文
  • 随着前一波生产自动化及数字化的阶段性任务结束,国内当前所面临产业加值升级,人工成本高涨,制造质量提升,多样客制化的需求等压力,使得下一波智能型...跟我做跟我学 PCI 运动控制卡设计智能设备教程 亲们,看完我
  • 好长时间没有写同步项目了,很着急,很自责。... 再次决心将这个任务写下去,就将任务一下子说透吧。最近大家的进步已经能够接受我的这种“和盘托出”了。从技术角度,有了函数,写程序变成一种可组合的事
  • 单元7 设计选项卡类网页特效 特效赏析 任务7-1 应用setInterval函数和display属性实现选项的手动切换和自动切换 网页0701.html中的选项如图7-1所示 单击选项标题能实现手动切换同时该选项还能自动进行切换 ...
  • 《机械制造工艺学》课程设计任务书《机械制造工艺学》是一门以机械产品的制造工艺为研究对象的专业主干课程。它包括和涉及的范围很广,需要多门学科知识的支持,同时又和生产实际联系十分紧密。掌握课程的内容要有...
  • 这是第一项任务的提交,该任务是使用html,css,javascript,django设计网络世界组织的网站。 普里扬·博米克(Priyanka Bhowmick) 目标: 为网络世界组织创建主页 在以下提到的网站的各个页面上工作: 家 ...
  • 常用设计模式总结

    万次阅读 多人点赞 2019-07-31 19:13:12
    设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,是可复用面向对象软件的基础。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 ...
  • 下面我们来介绍另一个非常重要的功能,就是任务系统,任务系统其实是比较复杂的,涉及到任务列表,任务奖励,任务的不同阶段的判定等等,这些我们后面会单独写一篇来详细讲解,本次先来利用现有的变量功能来完成一个...
  • 他们采用一种我称之为“任务板挪” 的方法来代替设计。团队有一个开发任务清单,比如 Scrum 产品待办列表,其中的任务被张贴在“任务板”上,然后他们可以将一张便利贴从“任务板”上的“待办”泳道移动到“进行...
  • 什么是批量处理维基百科给批量处理的定义是指在没有人工干预的情况下,由一个计算机程序基于一份批量的输入执行一系列的任务的一种处理模式。这句话可能有点拗口,简单来说,批量处理是一种处理模式,这种模式在进行...
  • 用户测试:请目标用户使用产品来完成任务,观察并记录用户使用产品的整个过程. 用户测试的定义:也被称为产品可用性测试,指特定的用户在特定的使用场景中,为了达到特定的目标而使用某产品时,所感受到的有效性、...
  • 信息架构设计是对信息进行结构、组织方式以及归类的设计,好让使用者与用户容易使用和理解的一项艺术与科学。(如:饭店装修) 目的: 让用户一眼就明白你的产品能做什么,大概怎么用。(如:底部导...
  • PCI数据传输的详细设计经历(基于PCI9054)之一 去年的时候,接受公司分配的任务,做了一块PCI数据传输,作用是把前面板子传过来的数据上传到PC机,PC上的应用软件会进行一些后续的处理。 刚开始这个项目的...
  • //评注:这是一位朋友的关于语音开发的开源框架,历时约一年。初步在.net实现,并有实用案例。后期希望开源并借助大家的力量完成c++,delphi的版本。其目的是使开发爱好者从某个台阶起步,更快的进入到语音开发领域。...
  • ...航空产品数字化设计与NVIDIA Quadro FX专业显卡 2009-07-25 20:19:20 作者:智造网 来源:智造网—助力中国制造业创新—idnovo.com.cn  从2009年第三期开始,我
  • 外币收单系统的设计和实现

    千次阅读 2010-06-19 15:24:00
    随着我国对外交往的不断扩大,到我国旅游和从事商务活动的外籍人士将越来越多,这对我国的银行受理环境提出了更高的要求。另外,只有改善外币受理环境,积极参与国际业务,才能积累丰富的国际金融业务经验...
  • 23 种设计模式详解(全23种)

    万次阅读 多人点赞 2019-06-09 00:21:59
    设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式...
  • 三天研读《中兴电路设计规范》精华总结

    万次阅读 多人点赞 2020-05-16 18:25:52
    本博客将简述中兴通讯股份有限公司在原理图设计中需要注意的一些事项,其中包含了中兴设计开发部积累的大量硬件开发知识和经验,可以作为学习使用。硬件工程师可以学习并掌握检查条目的内容以及对条目的详细说明,...
  • 产品读书《设计心理学1-4》-设计

    千次阅读 2016-12-27 10:58:51
    诺曼在这套书里面谈到,设计本质不是创意,而是设计者与使用者的沟通,是要让用户一眼就看得懂产品,知道怎么使用。所以一个好的设计,一定是兼顾了可视性和易懂性。 简单来说,好的设计就是让用户一看就知道这个...
  • UI设计师是唯一要和程序员合作的设计师职业,我们看多了相互取笑的段子,那么怎样的UI设计师会是程序员眼中最牛的呢?这其中有3个层次。 1.懂UI 没错,首先是懂UI。UI设计设计的是人机交互界面,界面的载体是设备...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 138,156
精华内容 55,262
关键字:

任务卡设计