Efektivitas Strategi Ta’bir Mushawwar dalam Pembelajaran Bahasa Arab di Madrasah Ibtidaiyah
Abstract
Speaking proficiency is one of the main skills in Arabic language learning, but fourth grade students of MI TPI Keramat face difficulties in assembling mufradat and practicing active conversation, mainly due to the lack of varied learning strategies. This study aims to analyze the effectiveness of the ta'bir mushawwar strategy, which uses picture as a media to facilitate students in constructing sentences and telling stories, in improving Arabic speaking skills. With a quantitative approach and pre-experiment design, this study involved 18 students of class IV-C. Data were collected through tests, observations, and interviews, then analyzed descriptively and N-Gain test. The posttest average was 83.06 (very good category) with 88.9% completeness, and the N-Gain score was 0.6398 which showed effectiveness in the medium category. The ta'bir mushawwar strategy offers a solution in the form of a visual and hands-on learning approach that can significantly improve students' speaking skills and make learning more interesting and interactive.
Server IP : 103.175.217.176 / Your IP : 18.119.122.69 Web Server : Apache/2.4.62 (Debian) System : Linux bilfathvps 5.10.0-33-amd64 #1 SMP Debian 5.10.226-1 (2024-10-03) x86_64 User : root ( 0) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bilfatvps/html/journal.stitaf.ac.id/lib/pkp/classes/user/ |
Upload File : |
<?php /** * @file classes/user/UserSettingsDAO.inc.php * * Copyright (c) 2014-2019 Simon Fraser University * Copyright (c) 2000-2019 John Willinsky * Distributed under the GNU GPL v2. For full terms see the file docs/COPYING. * * @class UserSettingsDAO * @ingroup user * @see User * * @brief Operations for retrieving and modifying user settings. */ class UserSettingsDAO extends DAO { /** * Retrieve a user setting value. * @param $userId int * @param $name * @param $contextId int * @return mixed * @see UserSettingsDAO::getByAssoc */ function getSetting($userId, $name, $contextId = null) { return $this->getByAssoc($userId, $name, Application::getContextAssocType(), $contextId); } /** * Retrieve all users by setting name and value. * @param $name string * @param $value mixed * @param $type string * @param $contextId int * @return DAOResultFactory matching Users * @see UserSettingsDAO::getUsersByAssocSetting */ function getUsersBySetting($name, $value, $type = null, $contextId = null) { return $this->getUsersByAssocSetting($name, $value, $type, Application::getContextAssocType(), $contextId); } /** * Retrieve all settings for a user for a journal. * @param $userId int * @param $contextId int * @return array */ function getSettingsByContextId($userId, $contextId = null) { return $this->getSettingsByAssoc($userId, Application::getContextAssocType(), $contextId); } /** * Add/update a user setting. * @param $userId int * @param $name string * @param $value mixed * @param $type string data type of the setting. If omitted, type will be guessed * @param $contextId int * @see UserSettingsDAO::updateByAssoc */ function updateSetting($userId, $name, $value, $type = null, $contextId = null) { return $this->updateByAssoc($userId, $name, $value, $type, Application::getContextAssocType(), $contextId); } /** * Delete a user setting by association. * @param $userId int * @param $name string * @param $contextId int * @see UserSettingsDAO::deleteByAssoc */ function deleteSetting($userId, $name, $contextId = null) { return $this->deleteByAssoc($userId, $name, Application::getContextAssocType(), $contextId); } /** * Retrieve a user setting value by association. * @param $userId int * @param $name * @param $assocType int * @param $assocId int * @return mixed */ function getByAssoc($userId, $name, $assocType = null, $assocId = null) { $result = $this->retrieve( 'SELECT setting_value, setting_type FROM user_settings WHERE user_id = ? AND setting_name = ? AND assoc_type = ? AND assoc_id = ?', array( (int) $userId, $name, (int) $assocType, (int) $assocId ) ); if ($result->RecordCount() != 0) { $row = $result->getRowAssoc(false); $returner = $this->convertFromDB($row['setting_value'], $row['setting_type']); } else { $returner = null; } $result->Close(); return $returner; } /** * Retrieve all users by association, setting name, and value. * @param $name string * @param $value mixed * @param $type string * @param $assocType int * @param $assocId int * @return DAOResultFactory matching Users */ function getUsersByAssocSetting($name, $value, $type = null, $assocType = null, $assocId = null) { $userDao = DAORegistry::getDAO('UserDAO'); $value = $this->convertToDB($value, $type); $result = $this->retrieve( 'SELECT u.* FROM users u, user_settings s WHERE u.user_id = s.user_id AND s.setting_name = ? AND s.setting_value = ? AND s.assoc_type = ? AND s.assoc_id = ?', array($name, $value, (int) $assocType, (int) $assocId) ); return new DAOResultFactory($result, $userDao, '_returnUserFromRow'); } /** * Retrieve all settings for a user by association info. * @param $userId int * @param $assocType int * @param $assocId int * @return array */ function getSettingsByAssoc($userId, $assocType = null, $assocId = null) { $userSettings = array(); $result = $this->retrieve( 'SELECT setting_name, setting_value, setting_type FROM user_settings WHERE user_id = ? AND assoc_type = ? AND assoc_id = ?', array((int) $userId, (int) $assocType, (int) $assocId) ); while (!$result->EOF) { $row = $result->getRowAssoc(false); $value = $this->convertFromDB($row['setting_value'], $row['setting_type']); $userSettings[$row['setting_name']] = $value; $result->MoveNext(); } $result->Close(); return $userSettings; } /** * Add/update a user setting by association. * @param $userId int * @param $name string * @param $value mixed * @param $type string data type of the setting. If omitted, type will be guessed * @param $assocType int * @param $assocId int */ function updateByAssoc($userId, $name, $value, $type = null, $assocType = null, $assocId = null) { $result = $this->retrieve( 'SELECT COUNT(*) FROM user_settings WHERE user_id = ? AND setting_name = ? AND assoc_type = ? AND assoc_id = ?', array((int) $userId, $name, (int) $assocType, (int) $assocId) ); $value = $this->convertToDB($value, $type); if ($result->fields[0] == 0) { $returner = $this->update( 'INSERT INTO user_settings (user_id, setting_name, assoc_type, assoc_id, setting_value, setting_type) VALUES (?, ?, ?, ?, ?, ?)', array( (int) $userId, $name, (int) $assocType, (int) $assocId, $value, $type ) ); } else { $returner = $this->update( 'UPDATE user_settings SET setting_value = ?, setting_type = ? WHERE user_id = ? AND setting_name = ? AND assoc_type = ? AND assoc_id = ?', array( $value, $type, (int) $userId, $name, (int) $assocType, (int) $assocId ) ); } $result->Close(); return $returner; } /** * Delete a user setting by association. * @param $userId int * @param $name string * @param $assocType int * @param $assocId int */ function deleteByAssoc($userId, $name, $assocType = null, $assocId = null) { return $this->update( 'DELETE FROM user_settings WHERE user_id = ? AND setting_name = ? AND assoc_type = ? AND assoc_id = ?', array((int) $userId, $name, (int) $assocType, (int) $assocId) ); } /** * Delete all settings for a user. * @param $userId int */ function deleteSettings($userId) { return $this->update( 'DELETE FROM user_settings WHERE user_id = ?', (int) $userId ); } }
Youez - 2016 - github.com/yon3zu
LinuXploit