From 8a7dfa0972c83fd811a4296e7373574bea4a28d0 Mon Sep 17 00:00:00 2001 From: Nguyễn Gia Phong Date: Sun, 19 Jul 2020 20:34:40 +0700 Subject: [usth/ICT2.7] Remove Udacity transcribes --- .../13 - Final Example - lang_en_vs4.srt | 127 --------------------- 1 file changed, 127 deletions(-) delete mode 100644 usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt (limited to 'usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt') diff --git a/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt b/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt deleted file mode 100644 index 4fab0c6..0000000 --- a/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt +++ /dev/null @@ -1,127 +0,0 @@ -1 -00:00:00,220 --> 00:00:02,130 -I'm going to conclude this set of examples with - -2 -00:00:02,130 --> 00:00:04,750 -a system that you might also know, Bash. And in - -3 -00:00:04,750 --> 00:00:08,000 -case you don't, Bash is a Unix shell written as - -4 -00:00:08,000 --> 00:00:11,000 -a free software replacement for the traditional Bourne shell, also - -5 -00:00:11,000 --> 00:00:13,690 -called sh. So what I'm showing here is the - -6 -00:00:13,690 --> 00:00:17,950 -descriptive architecture of the command component of Bash. So, is - -7 -00:00:17,950 --> 00:00:22,170 -the architecture, as implemented, of the command component of Bash. - -8 -00:00:22,170 --> 00:00:25,390 -And the component is the one here sort of highlighted - -9 -00:00:25,390 --> 00:00:28,120 -in gray. And what you can see here, these names are - -10 -00:00:28,120 --> 00:00:31,640 -the sub components of the command component. And if we look at - -11 -00:00:31,640 --> 00:00:35,000 -this architecture, two design problems of the component can kind of jump - -12 -00:00:35,000 --> 00:00:37,870 -at us. The first one is the lack of cohesion within the - -13 -00:00:37,870 --> 00:00:40,830 -component. So, if you look here, you can see that only - -14 -00:00:40,830 --> 00:00:44,820 -a few connections exist between the sub-components. And having a low cohesion - -15 -00:00:44,820 --> 00:00:47,430 -is normally not a good thing for a design. The second thing - -16 -00:00:47,430 --> 00:00:50,860 -that we can note is the high coupling. The component has tons - -17 -00:00:50,860 --> 00:00:54,200 -of connections with other components. They're, these edges that are - -18 -00:00:54,200 --> 00:00:57,890 -leaving the components and going towards other parts of the system. - -19 -00:00:57,890 --> 00:01:01,190 -So basically, this component has low cohesion and high coupling, which - -20 -00:01:01,190 --> 00:01:04,730 -is exactly the opposite of how a good design should be. - -21 -00:01:04,730 --> 00:01:07,410 -Given the structure, it is clear that anytime you change - -22 -00:01:07,410 --> 00:01:09,970 -this component you might need to change a bunch of other - -23 -00:01:09,970 --> 00:01:13,440 -components in the system. And of course, when changing other components - -24 -00:01:13,440 --> 00:01:15,910 -in the system, you might also need to chance the command - -25 -00:01:15,910 --> 00:01:19,060 -component as well. And along similar lines, to understand this - -26 -00:01:19,060 --> 00:01:21,890 -component you probably need to look at many other parts of - -27 -00:01:21,890 --> 00:01:24,690 -the system, which is also less than ideal. And one - -28 -00:01:24,690 --> 00:01:27,580 -important point here is that with all these examples, I'm not - -29 -00:01:27,580 --> 00:01:30,500 -really trying to criticize any specific system, what I'm trying - -30 -00:01:30,500 --> 00:01:34,380 -to show instead, is how complex software architectures can be, and - -31 -00:01:34,380 --> 00:01:37,040 -how much they can degrade over time. And this is true - -32 -00:01:37,040 --> 00:01:39,660 -for most systems, not just the ones that I showed you. -- cgit 1.4.1