计算机科学导论:历史、发展与基础知识

版权申诉
0 下载量 161 浏览量 更新于2024-07-16 收藏 772KB PPT 举报
"计算机科学导论(Lec01) .ppt" 这是一份关于计算机科学导论的讲座资料,由BigGuo在仲恺农业工程学院•信息学院讲解。资料涵盖了计算机科学和技术的概述,包括计算机的历史和发展、计算学科的定义、知识体系以及学科教育等方面的内容。 首先,资料介绍了计算机的定义,它被描述为一种能够根据预存程序自动、快速、准确执行数学运算和逻辑比较的智能电子设备,具备存储、逻辑判断和可靠性的能力。尽管计算机本身不具备智能,但通过编程可以实现复杂的功能。 接着,资料回顾了计算机的发展历史。从古代的计算工具如算筹和算盘,到17世纪的机械计算机,如德国科学家契克卡德为开普勒制作的机械计算器,再到法国科学家帕斯卡的帕斯卡计算器,这些都是计算机发展早期的重要里程碑。这些机械计算机依赖于手动操作,但已经显示了自动化计算的雏形。 随着历史的推进,计算机经历了多次革命性变革,包括真空管、晶体管和集成电路的引入,以及后来的个人计算机和互联网的兴起。这些发展不仅改变了计算的速度和效率,也极大地推动了社会的信息化进程。 在计算学科概述部分,资料可能讨论了计算机科学的各个分支,如算法设计、数据结构、操作系统、网络、人工智能等,以及这些领域如何相互作用和影响。此外,资料也可能探讨了计算机科学教育的重要性,包括如何培养学生的编程技能、问题解决能力和创新思维。 最后,资料可能会对本章内容进行小结,强调了学习计算机科学的基础知识和理解其历史背景对于深入理解和应用这个学科至关重要。同时,这也为后续章节的学习奠定了基础,可能涉及更高级的主题,如软件工程、数据库管理、信息安全等。 总结来说,这份"计算机科学导论(Lec01)"的PPT提供了对计算机科学的入门介绍,不仅介绍了计算机的基本概念和历史,还为学习者展示了这个广阔领域的知识体系和教育方向。通过这样的学习,学生能够建立起对计算机科学全面的认识,并为后续深入学习打下坚实的基础。
2023-07-10 上传

第一段代码 GroupsResource package ece448.lec16; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class GroupsResource { private final GroupsModel groups; public GroupsResource(GroupsModel groups) { this.groups = groups; } @GetMapping("/api/groups") public Collection<Object> getGroups() throws Exception { ArrayList<Object> ret = new ArrayList<>(); for (String group: groups.getGroups()) { ret.add(makeGroup(group)); } logger.info("Groups: {}", ret); return ret; } @GetMapping("/api/groups/{group}") public Object getGroup( @PathVariable("group") String group, @RequestParam(value = "action", required = false) String action) { if (action == null) { Object ret = makeGroup(group); logger.info("Group {}: {}", group, ret); return ret; } // modify code below to control plugs by publishing messages to MQTT broker List<String> members = groups.getGroupMembers(group); logger.info("Group {}: action {}, {}", group, action, members); return null; } @PostMapping("/api/groups/{group}") public void createGroup( @PathVariable("group") String group, @RequestBody List<String> members) { groups.setGroupMembers(group, members); logger.info("Group {}: created {}", group, members); } @DeleteMapping("/api/groups/{group}") public void removeGroup( @PathVariable("group") String group) { groups.removeGroup(group); logger.info("Group {}: removed", group); } protected Object makeGroup(String group) { // modify code below to include plug states HashMap<String, Object> ret = new HashMap<>(); ret.put("name", group); ret.put("members", groups.getGroupMembers(group)); return ret; } private static final Logger logger = LoggerFactory.getLogger(GroupsResource.class); }

2023-07-10 上传