Материал: Розроблення бібліотеки класів для подання інформації про тарифікацію викладачів коледжа

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Для забезпечення точного та швидкого зчитування інформації в зоні найкращого бачення площина екрана монітора повинна бути перпендикулярною нормальній лінії зору. При цьому повинна бути передбачена можливість переміщення монітора навколо вертикальної осі в межах ±30° (справа наліво) та нахилу вперед до 85° і назад до 105° з фіксацією в цьому положенні.

Клавіатура повинна бути розташована так, щоб на ній було зручно працювати двома руками. Клавіатуру слід розміщати на поверхні столу на відстані 100...300 мм від краю. Кут нахилу клавіатури до столу повинен бути в межах від 5 до 15°, зап'ястя на долонях рук повинні розташовуватись горизонтально до площини столу (рис. 3.9).

Принтер повинен бути розміщений у зручному для користувача положенні, так, що максимальна відстань від користувача до клавіш управління принтером не перевищувала довжину витягнутої руки користувача.

Конструкція робочого стола повинна забезпечувати можливість оптимального розміщення на робочій поверхні обладнання, що використовується, з врахуванням його кількості та конструктивних особливостей (розмір монітора, клавіатури, принтера, ПК та ін.) і документів, а також враховувати характер роботи, що виконується.


Вимоги до режимів праці і відпочинку при роботі з ПК. Під час роботи з ПК для збереження здоров'я працівників, запобігання профзахворюванням і підтримки працездатності встановлюються внутрішньо змінні регламентовані перерви для відпочинку.

Тривалість регламентованих перерв під час роботи з ПК за 8-годинної денної робочої зміни залежно від характеру праці: 15 хвилин через кожну годину роботи - для розробників програм зі застосуванням ПК; 15 хвилин через кожні дві години - операторів із застосуванням ПК; 10 хвилин після кожної години роботи за ПК для операторів комп'ютерного набору.

Для зниження нервово-емоційного напруження, втомленості зорового аналізатора, для поліпшення мозкового кровообігу і запобігання втомі доцільно деякі перерви використовувати для виконання комплексу вправ, які передбачені ДСанПіН 3.3.2.007-98, в тому числі і для сеансів психологічного розвантаження у кімнаті з відповідним інтер'єром та кольоровим оформленням.

Ігнорування санітарних правил і норм роботи з ПК може викликати у осіб, які з ними професійно працюють, загальну втому, зорову втому, болі та відчуття піску в очах, відчуття засміченості та свербіння очей, болі в хребті, закам'янілість та оніміння м'язів шиї та плечового поясу, пошкодження дисків хребта, порушення постави, судоми м'язів ніг, синдром RSI хронічний розтяг зв'язок, синдром тунелю Карпаля, головні болі, поганий сон, депресивні стани тощо.

ВИСНОВКИ

Під час роботи над дипломним проектом було проведено розробку бібліотеки класів «Система тарифікації викладачів», призначеної для комп’ютеризованої роботи навчального відділу при створенні розкладу занять коледжу в середовищі об’єктно-орієнтованої мови програмування MS Visual Basic 2008 Express Edition;

Були виконані наступні завдання:

- проаналізовано предметну область, побудувано словник ключових понять та ідентифіковано основні класи та об’єкти бібліотеки;

-        спроектувано ідентифіковані класи та об’єкти;

         написані та налагожені вхідні тексти бібліотеки класів.

ДЖЕРЕЛА ТА ПОСИЛАННЯ

http://upravlenie29.blogspot.com/2011/03/blog-post_4355.html://itiss.info/publishing/experts-articles/48-yudin/128-vprovadjennya-novtnh-tehnologi-v-suchasn-sistemi-dokumentoobgu-navchalnogo-zakladu

ДОДАТОК А

Код класу «Викладач»

Class ВикладачShared Event ПотрібнаКарткаВикладача(ByVal ІдентВикладача UInt32, _Картка As КарткаВикладача)Shared Operator =(ByVal В1 As Викладач, ByVal В2 As Викладач) BooleanВ1.Equals(В2)OperatorShared Operator <>(ByVal В1 As Викладач, ByVal В2 As

Викладач) As BooleanNot В1.Equals(В2)OperatorмІдент As UInt32мКартка As КарткаВикладачаSub New(ByVal ІдентВикладача As UInt32)

мІдент = ІдентВикладача

мКартка = NothingSubSub New(ByVal дч As IO.BinaryReader)

завантажитиЗ(дч)SubOverrides Function Equals(ByVal примірник As Object) As BooleanReferenceEquals(Me, примірник) Then Return TrueTypeOf примірник Is Викладач Thenінший As Викладач = DirectCast(примірник, Викладач)Me.мІдент = інший.мІдентFalseIfFunctionReadOnly Property Номер() As UInt32мІдентGetPropertyProperty Картка() As КарткаВикладачамКартка Is Nothing ThenПотрібнаКарткаВикладача(мІдент, мКартка)IfмКарткаGet(ByVal знач As КарткаВикладача)

мКартка = знач

мІдент = мКартка.НомерSetPropertyOverridable Sub завантажитиЗ(ByVal дч As .IO.BinaryReader)

мІдент = дч.ReadUInt32

мКартка = NothingSubOverridable Sub зберегтиУ(ByVal дз As System.IO.BinaryWriter)

дз.Write(мІдент)SubClass

Код класу «КарткаВикладача»

Public Class КарткаВикладачаКлючованіКолекції.КлючованийЕлемент(Of UInt32)мОсоба As ОсобамДаніПроОсвіту As New ДаніПроОсвітумКатегорія As String = ""мХідВикладання As ХідВикладанняSub New(ByVal Ідент As UInt32).New(Ідент)

мОсоба = New Особа(Стать.Чол)

мХідВикладання = New ХідВикладанняSubSub New(ByVal дч As System.IO.BinaryReader).New(дч)SubReadOnly Property Номер() As UInt32MyBase.КлючGetPropertyProperty Особа() As ОсобамОсобаGet(ByVal знач As Особа)

мОсоба = значSetPropertyProperty ДаніПроОсвіту() As ДаніПроОсвітумДаніПроОсвітуGet(ByVal знач As ДаніПроОсвіту)

мДаніПроОсвіту = значSetPropertyProperty Категорія() As StringмКатегоріяGet(ByVal знач As String)

мКатегорія = значSetPropertyReadOnly Property ХідВикладання() As ХідВикладаннямХідВикладанняGetPropertyOverrides Sub завантажитиЗ(ByVal дч As System.IO.BinaryReader)

мКлюч = дч.ReadUInt32

мОсоба = New Особа(дч)

мДаніПроОсвіту = New ДаніПроОсвіту(дч)

мКатегорія = дч.ReadString

мХідВикладання = New ХідВикладання(дч)SubOverrides Sub зберегтиУ(ByVal дз As System.IO.BinaryWriter)

дз.Write(мКлюч)

мОсоба.зберегтиУ(дз)

мДаніПроОсвіту.зберегтиУ(дз)

дз.Write(мКатегорія)

мХідВикладання.зберегтиУ(дз)Sub

End Class

Код класу «Особа»

Public Enum Стать As Byte

Чол

ЖінEnumClass ОсобамПрізвище As StringмІмення As StringмБатьківське As StringмСтать As СтатьмДатаНародження As DateSub New(ByVal Стать As Стать)

мСтать = Стать

мДатаНародження = Now.DateSubSub New(ByVal дч As System.IO.BinaryReader)

завантажитиЗ(дч)SubOverrides Function Equals(ByVal obj As Object _

) As BooleanTypeOf obj Is Особа ThenІнший As Особа = CType(obj, Особа)Me.мСтать = Інший.мСтать _Me.мДатаНародження = Інший.мДатаНародження _Me.мПрізвище = Інший.мПрізвище _Me.мІмення = Інший.мІмення _Me.мБатьківське = Інший.мБатьківськеFalseIfFunctionOverrides Function ToString() As StringString.Format("{0} {1} {2}, нар. {3:dd.MM.yy}", _

мПрізвище, мІмення, мБатьківське, мДатаНародження)FunctionReadOnly Property Стать() As СтатьмСтатьGetPropertyProperty Батьківське() As StringмБатьківськеGet(ByVal знач As String)

мБатьківське = значSetPropertyProperty Імення() As StringмІменняGet(ByVal знач As String)

мІмення = значSetPropertyProperty Прізвище() As StringмПрізвищеGet(ByVal знач As String)

мПрізвище = значSetPropertyProperty ДатаНародження() As DateмДатаНародженняGet(ByVal знач As Date)

мДатаНародження = значSetPropertyFunction ПІБ() As StringString.Format("{0} {1} {2}", мПрізвище, мІмення, мБатьківське)FunctionFunction ПрізвищеІніціали() As StringString.Format("{0} {1}.{2}.", _

мПрізвище, _(мІмення, 1), _(мБатьківське, 1))FunctionFunction Вік(ByVal Дата As Date) As IntegerCInt(Дата.Subtract(мДатаНародження).TotalDays / 365)FunctionOverridable Sub завантажитиЗ(ByVal дч As .IO.BinaryReader)

мПрізвище = дч.ReadString

мІмення = дч.ReadString

мБатьківське = дч.ReadString

мСтать = DirectCast(дч.ReadByte, Стать)

мДатаНародження = Date.FromBinary(дч.ReadInt64)SubOverridable Sub зберегтиУ(ByVal дз As System.IO.BinaryWriter)

дз.Write(мПрізвище)

дз.Write(мІмення)

дз.Write(мБатьківське)

дз.Write(мСтать)

дз.Write(мДатаНародження.ToBinary)Sub

End Class

Код класу «Тарифікація»

Imports System.IOНапрямкиПідготовкиВикладачі

''' <summary>Клас Тарифікація подає список примірників

ЕлементТарифікації,

''' забезпечуючі глобальну точку доступу до його єдиного примірника.

''' Спадкує від List(Of ЕлементТарифікації).

''' </summary>Class ТарифікаціяList(Of ЕлементТарифікації)Shared Sub ініціалізувати(ByVal Файл As String)мПримірник Is Nothing Then

мПримірник = New Тарифікація(Файл)IfSubShared Function Примірник() As ТарифікаціямПримірникFunctionShared мПримірник As Тарифікація = NothingмФайл As StringSub New(ByVal Файл As String).New()

мФайл = Файл

відкрити()SubReadOnly Property МаєПустеЗначення() As BooleanMyBase.Count = 0GetPropertyReadOnly Property Тарифіковано(ByVal Викладач As Викладач) BooleanEach елем As ЕлементТарифікації In Meелем.Викладач = Викладач Then Return TrueFalseGetPropertyReadOnly Property Тарифіковано(ByVal Посилання As

ПосиланняНаДисципліну) As BooleanEach елем As ЕлементТарифікації In Meелем.ПосиланняНаДисципліну = Посилання Then Return TrueFalseGetPropertyReadOnly Property Тарифіковано(ByVal Дисципліна As

ІДисциплінаТарифікації) As BooleanТарифіковано(Дисципліна.ДайПосилання)GetPropertyReadOnly Property РівеньТарифікації(ByVal Викладач As

Викладач) As Integerрівень As Integer = 0Each елем As ЕлементТарифікації In Meелем.Викладач = Викладач Then рівень += 1рівеньGetPropertyReadOnly Property РівеньТарифікації(ByVal Посилання As

ПосиланняНаДисципліну) As Integerрівень As Integer = 0Each елем As ЕлементТарифікації In Meелем.ПосиланняНаДисципліну = Посилання Then рівень += 1рівеньGetPropertyReadOnly Property РівеньТарифікації(ByVal Дисципліна As

ІДисциплінаТарифікації) As IntegerРівеньТарифікації(Дисципліна.ДайПосилання)GetPropertyFunction ДисципліниВикладача(ByVal Викладач As Викладач) List(Of ПосиланняНаДисципліну)список As New List(Of ПосиланняНаДисципліну)Each елем As ЕлементТарифікації In Meелем.Викладач = Викладач Then

список.Add(елем.ПосиланняНаДисципліну)списокFunctionFunction СписокДисциплін() As List(Of

ПосиланняНаДисципліну)список As New List(Of ПосиланняНаДисципліну)Each елем As ЕлементТарифікації In MeNot список.Contains(елем.ПосиланняНаДисципліну) Then

список.Add(елем.ПосиланняНаДисципліну)списокFunctionFunction ВикладачіДисципліни(ByVal Посилання As

ПосиланняНаДисципліну) As List(Of Викладач)список As New List(Of Викладач)Each елем As ЕлементТарифікації In Meелем.ПосиланняНаДисципліну = Посилання Then

список.Add(елем.Викладач)списокFunctionFunction ВикладачіДисципліни(ByVal Дисципліна As

ІДисциплінаТарифікації) As List(Of Викладач)ВикладачіДисципліни(Дисципліна.ДайПосилання)FunctionFunction СписокВикладачів() As List(Of Викладач)список As New List(Of Викладач)Each елем As ЕлементТарифікації In MeNot список.Contains(елем.Викладач) Then

список.Add(елем.Викладач)списокFunctionFunction Розподілити(ByVal Викладач As Викладач, _Дисципліна As ІДисциплінаТарифікації _

) As ЕлементТарифікаціїновий As New ЕлементТарифікації(Викладач, Дисципліна)індекс As Integer = MyBase.IndexOf(новий)індекс = -1 Then.Add(новий)новийNothingIfFunctionFunction Звільнити(ByVal Викладач As Викладач, _Дисципліна As ІДисциплінаТарифікації _

) As Booleanновий As New ЕлементТарифікації(Викладач, Дисципліна)індекс As Integer = MyBase.IndexOf(новий)індекс = -1 Then Return False.RemoveAt(індекс)TrueFunctionFunction Звільнити(ByVal Викладач As Викладач) As Booleanлог As Boolean = Falseінд As Integer = Me.Count To 1 Step -1Me(інд).Викладач = Викладач Then.RemoveAt(інд)

лог = TrueIfлогFunctionFunction Звільнити(ByVal Дисципліна As

ІДисциплінаТарифікації) As Booleanпосилання As ПосиланняНаДисципліну =

Дисципліна.ДайПосиланнялог As Boolean = Falseінд As Integer = Me.Count To 1 Step -1Me(інд).ПосиланняНаДисципліну = посилання Then.RemoveAt(інд)

лог = TrueIfлогFunctionSub очистити().Clear()SubSub відкрити()My.Computer.FileSystem.FileExists(мФайл) Thenдч As BinaryReader = New BinaryReader(New FileStream(мФайл, .Open))

завантажитиЗ(дч)

дч.Close()IfWithSubSub закрити()мФайл.Length = 0 Then Exit Subдз As BinaryWriter = New BinaryWriter(New FileStream(мФайл, _.OpenOrCreate))

зберегтиУ(дз)

дз.Close()

мФайл = ""SubShadows Sub завантажитиЗ(ByVal дч As IO.BinaryReader)ліч As Integer = 1 To дч.ReadInt32.Add(New ЕлементТарифікації(дч))SubShadows Sub зберегтиУ(ByVal дз As IO.BinaryWriter)

дз.Write(MyBase.Count)Each елем As ЕлементТарифікації In Me

елем.зберегтиУ(дз)SubClass

Код класу «Елементи тарифікації»

Public Class ЕлементТарифікаціїShared Operator =(ByVal оп1 As ЕлементТарифікації, _оп2 As ЕлементТарифікації) As Booleanоп1.Equals(оп2)OperatorShared Operator <>(ByVal оп1 As ЕлементТарифікації, _оп2 As ЕлементТарифікації) As BooleanNot оп1.Equals(оп2)OperatorмВикладач As Викладачі.ВикладачмПосиланняНаДисципліну As

НапрямкиПідготовки.ПосиланняНаДисциплінуSub New(ByVal Викладач As Викладачі.Викладач, _Дисципліна As НапрямкиПідготовки.ІДисциплінаТарифікації)

мВикладач = Викладач

мПосиланняНаДисципліну = Дисципліна.ДайПосиланняSubSub New(ByVal дч As IO.BinaryReader)

завантажитиЗ(дч)SubOverrides Function Equals(ByVal obj As Object) As BooleanTypeOf obj Is ЕлементТарифікації Thenінший As ЕлементТарифікації = DirectCast(obj,

ЕлементТарифікації)мВикладач = інший.мВикладач _мПосиланняНаДисципліну =

інший.мПосиланняНаДисциплінуMyBase.Equals(obj)IfFunctionOverrides Function ToString() As StringString.Format("{0}↔{1}", мВикладач.Номер,

мПосиланняНаДисципліну.Значення)FunctionOverrides Function GetHashCode() As IntegerMe.ToString.GetHashCodeFunctionProperty Викладач() As Викладачі.ВикладачмВикладачGet(ByVal знач As Викладачі.Викладач)

мВикладач = значSetPropertyProperty ПосиланняНаДисципліну() As

НапрямкиПідготовки.ПосиланняНаДисциплінумПосиланняНаДисциплінуGet(ByVal знач As НапрямкиПідготовки.ПосиланняНаДисципліну)

мПосиланняНаДисципліну = значSetPropertyOverridable Sub завантажитиЗ(ByVal дч As .IO.BinaryReader)

мВикладач = New Викладачі.Викладач(дч)

мПосиланняНаДисципліну = New

НапрямкиПідготовки.ПосиланняНаДисципліну(дч)SubOverridable Sub зберегтиУ(ByVal дз As System.IO.BinaryWriter)

мВикладач.зберегтиУ(дз)

мПосиланняНаДисципліну.зберегтиУ(дз)SubClass