�@ |
�A��
|
Page1
Page2
|
�@����܂ł̘A���ł́A�����̎����R�[�h�ɑ��ă��t�@�N�^�����O���s���Ă����ƁA���R�Ȑ���s���Ńf�U�C���p�^�[����������Ă������Ƃ�������Ă����B���̂��Ƃ������Ƃ���A�f�U�C���p�^�[���́��L�\�Ȑv�҂݂̂��s�������ȁ��f�U�C���ł͂Ȃ��B�ނ���A���I�u�W�F�N�g�w���Őv����҂����̍œK�ȉ������߂邤���œ��R�̋A���Ƃ��ėp�����镁�ՓI�ȁ��f�U�C���Ȃ̂ł���B�܂�A�f�U�C���p�^�[�����o���Ă����Ƃ������Ƃ́A���̉��ɂ��₭���B�ł���Ƃ������Ƃ��Ӗ�����B
�@����ł́A�o���Ă������f�U�C���p�^�[�����A���R�C�܂܂ɂ�����ꏊ�ʼn��ɂł��K�p���Ă����Ƃ����ԓx�͐��������낤���B�������Ȃ킯�͂Ȃ��B�f�U�C���p�^�[����K�p����̂ɂӂ��킵���Ȃ��P�[�X�i���j������̂��B�]���āA���Ƀf�U�C���p�^�[�����g�����Ȃ����߂ɂ́A�������������A�܂�u�f�U�C���p�^�[���̗��Ƃ����v������Ēʂ�K�v������̂��B
�@�ŏI��ƂȂ鍡��͂��̃f�U�C���p�^�[���̗��Ƃ����Ƃ��̔������ɂ��ĊT������B�����ŏЉ�闎�Ƃ����ɏ\���ɒ��ӂ��Ċ댯��������A���S�ʼn��K�ȃf�U�C���p�^�[���̊��p���ł���悤�ɂȂ��Ă������������B����ł͂�����������ɓ����Ă������B
���f�U�C���p�^�[���͖��\�̐v�c�[�����H
�@�u�f�U�C���p�^�[���͌����Ė��\�̐v�c�[���Ȃǂł͂Ȃ��B�v
�@���_���炢���ƁA�����������Ƃł���B�����܂ł̘A�ڂł������肢���������Ǝv�����A�f�U�C���p�^�[���́A����R���e�L�X�g�ɂ����āA�ߋ��ɌJ��Ԃ����������������������̂ŁA����Ηǂ��v�̂��߂̃m�E�n�E�W�ł���B��̓I�ȃ\�[�X�E�R�[�h��ė��p�\�ȃR���|�[�l���g�Ƃ�������̓I�Ȃ��̂ł͂Ȃ��A�ǂ��I�u�W�F�N�g�w���̐v�̌��{�Ƃ������X�^���X�̂��̂ł���B
�@�܂����Ƀf�U�C���p�^�[�����ǂ��v�c�[���ł������Ƃ��Ă��A�c�[���͂����܂œ���ł���A�����ǂ�������g��������Ƃ����ĕK�������ǂ����̂��ł���킯�ł͂Ȃ��B���ׂĂ͓�����g���l�ɍ��E�����̂ł���B
���f�U�C���p�^�[�����S�҂��ׂ肪���Ȃ�ȂƂ́H
�@�f�U�C���p�^�[�����o�����Ă̏��S�҂ɂ悭������X���Ƃ��āA�v���ɉ��ł�����ł��f�U�C���p�^�[����K�p���Ă��܂��Ƃ��������Ƃ���������B�f�U�C���p�^�[���͋��͂����A�悭������ɂ͕K������p������悤�ɁA�f�U�C���p�^�[�����g�p����ꍇ�ɂ́A���̕���p�ɂ��Ă��l������K�v������B
�@�f�U�C���p�^�[���̎w���������Ɖ�����ɂ͕K���g���[�h�I�t����������B�\�t�g�E�F�A�J���ɂ����邳�܂��܂ȗv���́A����̃p�^�[���͈̔͂ɂ͎��܂肫��Ȃ����낤�B���ꂼ��̃p�^�[���́u�R���e�L�X�g�v��u���v���Ӑ}����Ƃ������������Ɣc�����Ă��Ȃ���A���Ȃ����K���Ǝv���Ă����p�^�[�����A���ۂ͂܂������s�K�ƂȂ�ꍇ���o�Ă���B
�@����ɂ͎g���ǂ�����ԈႦ���p�^�[�����g�p���邱�ƂŃV�X�e���̕��G���������A�p�^�[�����g�p���Ȃ��ꍇ�����A�������ė������ɂ����v�ɂȂ��Ă��܂����Ƃ�������B�f���炵��������g���ǂ�����ԈႦ��ƁA���ʂ̓���ɂ���������Ă��܂��Ƃ������Ƃ��B
�@�ł͎��ۂɈ����v�̒����m���Ă����������B�����v����̓��t�@�N�^�����O�ł����Ƃ���́u�s�g�Ȃɂ����v���Y���Ă�����̂��B
�@�ȉ��Ƀ��o�[�g�EC�E�}�[�`���ɂ�鏑�Ёw�A�W���C���\�t�g�E�F�A�J���̉��`�x�ɋL�ڂ���Ă���7�́u�v�̈��L�v���Љ��B�����̂����A�ǂꂩ1�ł����̌X����������ꂽ�Ȃ�A���łɂ�ȂɊׂ��Ă���ƍl���Ă��悢���낤�B
���� | ���� | |
1.
|
�d�� | �ύX���ɂ����V�X�e���B1�̕ύX�ɂ���ăV�X�e���̂ق��̕����ɉe�����y�сA�����̕ύX��]�V�Ȃ�������悤�ȃ\�t�g�E�F�A |
2.
|
���낳 | 1�̕ύX�ɂ���āA���̕ύX�Ƃ͊T�O�I�Ɋ֘A�̂Ȃ����܂ʼn��Ă��܂��悤�ȃ\�t�g�E�F�A |
3.
|
�ڐA���̂Ȃ� | �ق��̃V�X�e���ł��ė��p�ł��镔�������W���[���Ƃ��Đ藣�����Ƃ�����ȃ\�t�g�E�F�A |
4.
|
�����ɂ��� | ���������Ƃ���������A��������Ƃ�����������Ղȃ\�t�g�E�F�A |
5.
|
�s�K�v�ȕ��G�� | �{���I�ȈӖ��������Ȃ��\�������Ă���悤�ȃ\�t�g�E�F�A |
6.
|
�s�K�v�ȌJ��Ԃ� | �����悤�ȍ\�����J��Ԃ��܂݁A���ۉ����Ă܂Ƃ߂��镔�����܂Ƃ܂��Ă��Ȃ��\�t�g�E�F�A |
7.
|
�s������ | �ǂ݂ɂ����A������ɂ����B���̈Ӑ}�����܂��`����Ă��Ȃ��\�t�g�E�F�A |
���o�[�g�EC�E�}�[�`���ɂ��7�̐v�̈��L |
����ȂɊׂ�Ȃ����߂̃I�u�W�F�N�g�w���v�̌���
�@�f�U�C���p�^�[����K�p����ۂɁA��ȂɊׂ�Ȃ��悤�ɂ��邽�߂ɂ́A�u�I�u�W�F�N�g�w���v�̌����v�i�ȍ~�A�v�����j���ӎ����Đv��i�߂Ă����Ƃ悢�B�f�U�C���p�^�[����K�p�����ɂ�������炸�A�ǂ��v���Ɗ����邱�Ƃ��ł��Ȃ��ꍇ�́A�v���������Ă��܂��Ă��邱�ƂɋN������ꍇ�������B
�@�v�����́A��2���ŏЉ��GRASP�p�^�[����f�U�C���p�^�[���̃r���f�B���O�E�u���b�N�ƂȂ�ł���{�I�ȃu���b�N�ł���B�f�U�C���p�^�[���́A�v�����ɂ���ē������Ƃ����Ă��ߌ��ł͂Ȃ��B
�@�v�����𗝉����邱�ƂŁA�v�̗ǂ������f��������������Ɛg�ɕt���āA�f�U�C���p�^�[����L���Ɋ��p���Ă��炢�����B�������A�����̐v�����͂����܂Ō����ł���A���܂��܂ȃg���[�h�I�t�̌��ʂƂ��āA�����Č����ɔ����Đv���s���悤�ȃP�[�X�����邾�낤�B
�@�ȉ��ɁA�w�A�W���C���\�t�g�E�F�A�J���̉��`�x�ɋL�ڂ���Ă���A�N���X�Ɋւ���5�̐v�������Љ��B
������ | ���� | |
1.
|
�P��ӔC�̌����iSRP�FSingle Responsibility Principle�j | �N���X��ύX���闝�R��1�ȏ㑶�݂��Ă͂Ȃ�Ȃ� |
2.
|
�I�[�v���E�N���[�Y�h�̌����iOCP�FOpen-Closed Principle�j | �\�t�g�E�F�A�̍\���v�f�i�N���X�A���W���[���A���Ȃǁj�͊g���ɑ��ĊJ���Ă��Ȃ���Ȃ炸�i�I�[�v���FOpen�j�A�C���ɑ��Ă͕��Ă��Ȃ���Ȃ�Ȃ��i�N���[�Y�h�FClosed�j |
3.
|
���X�R�t�̒u�������iLSP�FLiskov Substituion Principle�j | �h���^�͂��̊�{�^�ƒu���\�łȂ���Ȃ�Ȃ� |
4.
|
�ˑ��W�t�]�̌����iDIP�FDependency Inversion Principle�j | a. ��ʂ̃��W���[���͉��ʂ̃��W���[���Ɉˑ����Ă͂Ȃ�Ȃ��B�ǂ���̃��W���[�����u���ہv�Ɉˑ����ׂ��ł���b. �u���ہv�͎����̏ڍׂɈˑ����Ă͂Ȃ�Ȃ��B�����̏ڍׂ��u���ہv�Ɉˑ����ׂ��ł��� |
5.
|
�C���^�[�t�F�C�X�����̌����iISP�FInterface Segregation Principle�j | �N���C�A���g�ɁA�N���C�A���g�����p���Ȃ����\�b�h�ւ̈ˑ����������Ă͂Ȃ�Ȃ� |
�N���X�Ɋւ���5�̐v���� |
1. �P��ӔC�̌����iSRP�FSingle Responsibility Principle�j
�@�N���X�́u�����i�ӔC�j�v���u�ύX���R�v��1�ɍi��ׂ��ł���B�N���X�������̖����������Ă���A�N���X��ύX���闝�R�������ɂȂ��Ă��܂��B�܂������̖������������N���X�̖����݂͌��Ɍ������Ă��܂��A�Е���ύX������̕ύX�̉e���������ɂ��e�����Ă��܂��B�܂�A�����̗��R����1�̃N���X��ύX���邱�Ƃ��Ȃ��悤�ɂ��ׂ��ł���B
2. �I�[�v���E�N���[�Y�h�̌����iOCP�FOpen-Closed Principle�j
�@���W���[���̐U�镑�����g���\�ł���A�u�g���ɑ��ĊJ����Ă���v�Ƃ�����B�܂��A���W���[���̐U�镑����ύX���Ă��A�����̃\�[�X�E�R�[�h��o�C�i���E�R�[�h���e�����邱�Ƃ��Ȃ���A�u�C���ɑ��ĕ��Ă���v�Ƃ�����B�������Ă���悤�Ɏv���邱��2�̑����́u���ہv�Ɓu�|�����[�t�B�Y���v�Ŏ����ł���B���ۃN���X��C���^�[�t�F�C�X���`���āA���̔h���N���X��V���ɒlj�����A�����̃R�[�h���C�����邱�ƂȂ����W���[���̐U�镑�����g���ł���B
�@�ȉ��ɃI�[�v���E�N���[�Y�h�̌����ɏ]���Ă��Ȃ��ꍇ�Ə]���Ă���ꍇ�̐v����N���X�}�Ŏ����B���ꂼ��̐v�ɂ����āA�V����Server�N���X�̎������g�p����悤�ɂȂ����ꍇ�ɁAClient�N���X�ɋy�ԉe����z�����Ă��炢�����B
�I�[�v���E�N���[�Y�h�̌����ɏ]���Ă��Ȃ��v |
Client�N���X��Server�N���X�ւ̊֘A������BClient�N���X�͐V����Server�N���X���g���悤�ɂȂ�ƐV���Ȋ֘A���K�v�ɂȂ�B�܂�AClient�N���X�̏C�����K�v�ɂȂ�B |
�I�[�v���E�N���[�Y�h�̌����ɏ]���Ă���v |
Client�N���X��IClientInterface�C���^�[�t�F�C�X�����������N���X�ւ̊֘A������BServer�N���X�͂���IClientInterface�C���^�[�t�F�C�X�����������N���X�ł���BIClientInterface�C���^�[�t�F�C�X�����������V����Server�N���X���g���悤�ɂȂ��Ă��AClient�N���X�͊�����IClientInterface�C���^�[�t�F�C�X�����������N���X�ւ̊֘A�𗘗p����̂ŁAClient�N���X�͏C������K�v���Ȃ��B |
3. ���X�R�t�̒u�������iLSP�FLiskov Substituion Principle�j
�@�N���C�A���g���g�p���Ă����{�N���X�^��h���N���X�^�ɒu�������Ă�����ɓ��삵�Ȃ��Ă͂Ȃ�Ȃ��B���̂��߂ɂ͔h���N���X�͊�{�N���X�̐U�镑���̑Ó������ێ�����K�v������B��{�N���X�ȉ��̋@�\���������Ȃ��h���N���X�́A��{�N���X�ƒu�������邱�Ƃ͂ł��Ȃ��B
�@�o�[�g�����h�E���C���[�ɂ���Ē��ꂽ�u�_��ɂ��v�iDBC�FDesign By Contract�j�v���g�p����A���̌�����K�p�ł���悤�ɂȂ�B�u�_��ɂ��v�v�ł́A�N���X�̐U�镑�����A�N���X�����e���\�b�h�̎��O�����Ǝ�������A�N���X�̕s�Ϗ����ɂ���Ė���������B
�@.NET�ɂ����Č_��ɂ��v���s���ɂ́ADebug�N���X�iSystem.Diagnostics���O��ԁj��Assert���\�b�h���g�p���ăA�T�[�V�������s���A�_��ɑ���ᔽ�����o������@������B�܂�����1�̕��@�Ƃ��ă��j�b�g�e�X�g������B���j�b�g�e�X�g�̓N���X�̐U�镑���Ɋւ���_����L�q���A�`�F�b�N���邽�߂̗L���Ȏ�i�ł���B
4. �ˑ��W�t�]�̌����iDIP�FDependency Inversion Principle�j
�@�]���̎葱���^�v���O���~���O�ł́A��ʃ��x���̕��j�����ʃ��x���̎����Ɉˑ����Ă��܂��B����ł́A�����̏ڍׂ�S�����鉺�ʃ��W���[���̕ύX����ʃ��W���[���ɂ܂ŋy�сA���̕ύX��]�V�Ȃ�����Ă��܂��B�I�u�W�F�N�g�w���v���O���~���O�ł́A�u���ہv�����邱�Ƃł��̈ˑ������t�]������B�܂��ʃ��x���Łu���ۃC���^�[�t�F�C�X�v���`���A���ʃ��x���ł��́u���ۃC���^�[�t�F�C�X�v����������B���̂悤�ɂ��ĕ��j�Ǝ����̏ڍׂ��Ƃ��Ɂu���ۃC���^�[�t�F�C�X�v�Ɉˑ�������̂��B
�@��ʃ��x���̃��W���[�����N���C�A���g�Ƃ��čl�����ꍇ�ɁA�]���̕��@�ł́A���ʃ��x���̃��W���[���̃C���^�[�t�F�C�X�ɃN���C�A���g���ˑ����Ă����B�܂�A�{���N���C�A���g����ׂ��T�[�r�X�̃C���^�[�t�F�C�X�̏��L�҂́A���ʃ��x���̃��W���[���ł���ƍl������B�������A���̌����ɏ]���N���C�A���g���ŃT�[�r�X�̃C���^�[�t�F�C�X��錾���邱�ƂɂȂ�A�u�C���^�[�t�F�C�X�̓N���C�A���g�ɑ�����v���ƂɂȂ�B�I�u�W�F�N�g�w���v�ł́A���̂悤�ɃC���^�[�t�F�C�X�̏��L�����t�]�����邱�Ƃ��ƂĂ��d�v�ɂȂ��Ă���B
�@�����ɂ��Ă͐�́u�I�[�v���E�N���[�Y�h�̌����v�Ŏ������N���X�}���Q�l�ɂȂ�ł��낤�B
5. �C���^�[�t�F�C�X�����̌����iISP�FInterface Segregation Principle�j
�@�N���X�𗘗p����N���C�A���g���������݂���悤�ȏꍇ�ɁA�e�N���C�A���g�ɋ��ʂ̑傫�ȃC���^�[�t�F�C�X�𗘗p�����Ă��܂��ƁA�e�N���C�A���g�͗��p���Ȃ����\�b�h�ɂ܂ňˑ����Ă��܂��B�܂�A�e�N���C�A���g�����p���Ă��Ȃ����\�b�h�ɑ���ύX�̉e���܂ŎĂ��܂��\��������Ƃ������Ƃ��B�����Ŋe�N���C�A���g���Ăяo���K�v�̂���T�[�r�X�̒P�ʂŃN���C�A���g���O���[�v�������A���̃O���[�v�ɓ��������C���^�[�t�F�C�X���������邱�ƂŁA�قȂ�T�[�r�X�Ԃł̊֘A���f���邱�Ƃ��\�ƂȂ�B
�@�����܂łŁA�N���X�Ɋւ���v�������ȒP�ɐ����������A�A�v���P�[�V�����̋K�͂��傫���Ȃ��Ă���ƁA����ɔ�Ⴕ�ăN���X�̐��������Ă�����̂��B�t���[�����[�N���\�z����ۂȂǂ��ǂ��Ⴞ�낤�B�ێ琫���l������A�N���X�Ɋւ���v�����ȊO�ɂ��A�@�\��̌n�����鉽�炩�̎�i���K�v���B���̂悤�ȏꍇ�ɗL���ƂȂ�̂��A�u�p�b�P�[�W�i.NET�ł͖��O��Ԃ�A�Z���u���ɊY������j�v�ł���B�i���̃y�[�W�֑����j
�@INDEX | ||
�@ | .NET�Ŏn�߂�f�U�C���p�^�[�� | |
�@ | ��7�� �f�U�C���p�^�[���̗��Ƃ��� | |
1�D�f�U�C���p�^�[���͖��\�̐v�c�[�����H | ||
�@ | 2�D�ێ琫���l�������p�b�P�[�W�����̎w�j | |
�@�u.NET�Ŏn�߂�f�U�C���p�^�[���v |
- ��2��@�Ȍ��ȃR�[�f�B���O�̂��߂� �i2017/7/26�j
�@�����_���ŋL�q�ł��郁���o�̑����Athrow���Aout�ϐ��A�^�v���ȂǁAC# 7�ɂ͈ȑO�����R�[�h���Ȍ��ɋL�q�ł���悤�ȋ@�\����������Ă��� - ��1��@Visual Studio Code�f�o�b�O�̊�b�m�� �i2017/7/21�j
�@Node.js�v���O�������f�o�b�O���Ȃ���AVisual Studio Code�ɓ�������Ă���f�o�b�O�@�\�̊�{�́u�L�v���}�X�^�[���悤 - ��1��@���ĂȃR�[�f�B���O�̂��߂� �i2017/7/19�j
�@C# 7�Œlj����ꂽ�V�@�\�̒�����A�u���l���e�����\���̉��P�v�Ɓu���[�J�����v���Љ��B�����͕�����₷���R�[�h���L�q����̂Ɏg���� - Presentation Translator �i2017/7/18�j
�@Presentation Translator��PowerPoint�p�̃A�h�C���B�v���[���e�[�V�������̎����̕t����A������ł̎��^�����A�X���C�h�̖|����s����
|
|